Dockerfile的FROM关键字是否会查找最新镜像?CI构建时是否校验镜像版本?
Docker构建时的基础镜像更新逻辑
默认情况下,Docker执行docker build时,不会主动检查本地基础镜像是否为远程仓库的最新版本。它会优先复用本地已存在的同名同标签镜像(比如你指定的linktoimage/imagename:latest),只有当本地完全没有该镜像时,才会自动从远程仓库拉取。
这就是你的CI Runner上docker images显示旧版本的原因——构建过程直接使用了本地已有的旧镜像,没有去远程同步最新版。
如果需要在构建时强制获取最新的基础镜像,有两种可行方式:
- 构建前手动执行拉取命令:
docker pull linktoimage/imagename:latest - 使用
docker build的--pull参数启动构建:docker build --pull -t your-target-image .,该参数会强制Docker先校验远程仓库的最新版本,若本地镜像不是最新则自动拉取更新。
内容的提问来源于stack exchange,提问作者Gian Alessio
相关产品推荐
相关产品推荐

