我在亚马逊的弹性容器注册表(ECR)上有一个图像,我希望在我的Docker单节点群中部署为Docker服务。目前该服务正在运行旧版本的图像 latest 标签,但我已经上传了更新版本的 latest 标记为ECR。
运行 docker service update --force my_service 在我的swarm节点上,它使用image XXXXXXXXXXXX.dkr.ecr.us-east-1.amazonaws.com/my_service:latest, 结果是:
无法在注册表上访问XXXXXXXXXXXX.dkr.ecr.us-east-1.amazonaws.com/my_service:latest以记录其摘要。每个节点将独立访问XXXXXXXXXXXX.dkr.ecr.us-east-1.amazonaws.com/my_service:latest, 可能导致不同的节点运行不同版本的图像。
这似乎阻止节点拉出新的副本 latest 来自注册表的标记,以及正确更新的服务。
我已正确登录了 docker login 到ECR,并运行 docker pull XXXXXXXXXXXX.dkr.ecr.us-east-1.amazonaws.com/my_service:latest 工作正常(并返回一个摘要)。
为什么是 docker service update 尽管图像可用,但无法从ECR注册表中读取摘要?