alpine `apk` 是否有一个 ubuntu `apt` `--no-install-recommends` 等价物

Does alpine `apk` have an ubuntu `apt` `--no-install-recommends` equivalent

我正在尝试制作绝对最小的 Docker 图像,所以我已经从 ubuntu 作为我的基础切换到高山。

对于 apt,我曾经使用 --no-install-recommends 来最小化 "dependencies" 与我想要的软件包一起安装。是否有一个等效的标志我需要与 apk 一起传递,或者这是这个精简后的默认行为 OS?

不,它没有我认为的相同标志,因为它甚至不执行下载推荐包的相同行为。

然而,还有另一个标记 --virtual 可以帮助您缩小图像:

apk add --virtual somename package1 package2

然后

apk del somename 

这对于只需要构建而不是稍后执行的东西很有用。

请注意,您必须在一个 运行 命令中执行它,否则它无法从之前的 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 未添加到 "world" 包中,但在写入层之前被删除。

这个问题反过来问问题: