如何告诉Docker为"sub-image"拉取最新映像?



我的PHP Dockerfile示例:

# Install composer
COPY --from=composer:latest /usr/bin/composer /usr/bin/composer

有了这个,我希望在我的容器中有最新的composer版本。但我有一些旧版本。当我做docker images时,我看到我的composer:latest图像已经过时:

composer                              latest                 8f2928e1f548   8 months ago     176MB

所以我做的是:

docker-compose pull --include-deps
docker-compose up -d --build --remove-orphans

但是,它只提取基本图像,而不是我通过--from依赖的图像。

有我监督的选择吗?还是我应该只需要一些特定的版本,比如:2.0.13?我看到一些博客文章说:latest标签并不像它所暗示的那样

首先,您应该了解--include-deps仅适用于在depends_on指令中设置的图像。不适用于多级。

对于您的情况,您可能应该在没有缓存的情况下构建图像。

推送到存储库之前的docker build --pull --no-cache --tag myimage:version .或者如果你使用构建在你的docker组成文件

docker-compose build --no-cache --pull

:latest标记的问题在于,这并不意味着你正在提取该图像的最后一次更新,只是他们标记为:latest的更新。

很多时候,它的某些版本已经过时,但它可能是最后一个稳定的图像,所以如果你对图像的版本没有任何偏好,那么使用最新的图像也不是一个坏主意。

最新更新