2017-02-19 81 views
2

我有一个EC2实例运行Docker引擎。我创建了一个ECS存储库,可以将新图像成功推送到其他机器,并将更新后的图像提供给其他机器。但是,当我执行docker run并尝试从存储库中取出最新版本时,我实际上并没有获得最新版本,只是获得了我推送的第一个版本。我猜测有些版本可以防止你在不能恢复的情况下将不好的版本推向生产。更新EC2实例上的Docker镜像

我知道ECS中有一个名为Tasks的概念,但AWS文档并不是很好,所以我对它的内容并没有很好的理解。是否需要设置一些任务来正确版本这些图像?

回答

1

问题不在于aws。问题是使用latest标签。

当您使用最新的标记docker run some_image:latest运行容器时,docker引擎会搜索它的本地存储库和latest标记。如果它在本地存储库中找到它,docker-engine不会打扰搜索远程存储库。所以你总是最终运行docker_image的第一个版本。

因此,为避免歧义,最佳做法是而不是运行码头图像latest标记。