在以下“ apk add --virtual ”命令中什么是.build-deps?无法在Alpine文档中找到解释,在许多Dockerfiles中看到这个引用。

RUN apk add --no-cache --virtual .build-deps \
gcc \
freetype-dev \
musl-dev

RUN pip install --no-cache-dir <packages_that_require_gcc...> \

RUN apk del .build-deps

最佳答案:

-t, --virtual NAME      Instead of adding all the packages to 'world', create a new virtual package with the listed dependencies and add that to 'world'; the
                        actions of the command are easily reverted by deleting the virtual package

这意味着当你安装软件包时,这些软件包不会添加到全局软件包中。这种变化可以很容易地恢复。所以,如果我需要gcc来编译程序,但是一旦程序被编译,我就不再需要gcc了。

我可以在虚拟包中安装gcc和其他必需的包,并且可以删除所有依赖项,并删除此虚拟包名称。以下是示例用法,使用第一个命令安装的所有18个软件包将被下一个命令删除

apk add --virtual mypacks gcc vim
apk del mypacks
Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐