docker pull 不会从远程拉取最新的镜像
docker pull wouldn't pull latest image from remote
我运行这个:
docker pull 91xxxxx371.dkr.ecr.us-west-2.amazonaws.com/main_api
并没有提取任何新内容,但我知道 AWS/ECR 上有新图像。
所以我删除了现有的图像:
docker rmi 91xxxxx371.dkr.ecr.us-west-2.amazonaws.com/main_api
然后再拉,当然它说它检索了新图像,但这可能只是因为我删除了本地 tags/images 或其他什么。
为什么第一个拉取命令没有得到最新的?它默认为最新标签。
更新:
我必须更正我的答案,@David Maze(评论)是正确的:我描述了 docker run
行为。
来自 Docker 文档:
When using tags, you can docker pull an image again to make sure you have the most up-to-date version of that image
所以你的命令应该有效,我不知道为什么它不起作用,抱歉。
但是尽管如此,您可以使用标签作为变通方法来强制拉取具有指定标签的图像。
docker run
(不是 docker pull
)首先在您计算机上的本地注册表中搜索。如果有标签为latest
的图片,则满足并终止搜索。如果带有给定标签的图像在您的本地注册表中不可用,那么 docker 将在远程注册表中搜索,例如 docker 集线器或您自己的。
所以标签latest
应该小心使用。如果您的本地注册表中有一个带有标签 latest
的图像,那么您必须先将其删除,这样 docker 什么也得不到并在远程注册表中搜索。
我运行这个:
docker pull 91xxxxx371.dkr.ecr.us-west-2.amazonaws.com/main_api
并没有提取任何新内容,但我知道 AWS/ECR 上有新图像。 所以我删除了现有的图像:
docker rmi 91xxxxx371.dkr.ecr.us-west-2.amazonaws.com/main_api
然后再拉,当然它说它检索了新图像,但这可能只是因为我删除了本地 tags/images 或其他什么。
为什么第一个拉取命令没有得到最新的?它默认为最新标签。
更新:
我必须更正我的答案,@David Maze(评论)是正确的:我描述了 docker run
行为。
来自 Docker 文档:
When using tags, you can docker pull an image again to make sure you have the most up-to-date version of that image
所以你的命令应该有效,我不知道为什么它不起作用,抱歉。 但是尽管如此,您可以使用标签作为变通方法来强制拉取具有指定标签的图像。
docker run
(不是 docker pull
)首先在您计算机上的本地注册表中搜索。如果有标签为latest
的图片,则满足并终止搜索。如果带有给定标签的图像在您的本地注册表中不可用,那么 docker 将在远程注册表中搜索,例如 docker 集线器或您自己的。
所以标签latest
应该小心使用。如果您的本地注册表中有一个带有标签 latest
的图像,那么您必须先将其删除,这样 docker 什么也得不到并在远程注册表中搜索。