docker 高山`apk`是否有一个ubuntu `apt` `-no-install-recommends`等效

rggaifut  于 2023-11-17  发布在  Docker
关注(0)|答案(1)|浏览(117)

我正试图制作一个绝对最小的Docker镜像,所以我已经从ubuntu切换到alpine。
对于apt,我曾经使用--no-install-recommends来最小化与我想要的软件包一起安装的“依赖关系”。是否有一个等效的标志需要与apk一起传递沿着,或者这是这个精简操作系统的默认行为?

tcomlyy6

tcomlyy61#

不,它没有相同的标志,我认为,因为它甚至没有做同样的行为下载推荐的软件包。
但是,还有另一个标志--virtual可以帮助您保持图像较小:

apk add --virtual somename package1 package2

字符串
然后

apk del somename


这对于只需要构建而不需要执行的东西很有用。
注意,你必须在 oneRUN命令中执行add、use和del,否则添加的包将创建一个无关的镜像层,这将给最终的Docker镜像增加膨胀,基本上破坏了我们试图实现的目标。
例如,如果pything1需要package1package2来运行,但在安装构建过程中只需要package3package4,这将是最佳的:

RUN apk add --no-cache package1 package2
RUN apk add --no-cache --virtual builddeps package3 package4 && \
    pip install pything1 && \
    apk del builddeps


包3和4不被添加到“世界”包,而是在写入层之前被移除。
这个问题反过来问:What is .build-deps for apk add --virtual command?

相关问题