我使用Docker Hub存储私有Docker镜像,存储库有一个webhook,一旦图像更新,它就会调用我构建的服务:
服务正在相应地运行。运行后,ECS使用新任务定义创建新任务,使用旧任务定义停止任务,服务返回新定义。
关键是Docker Image没有更新,一旦服务在新任务定义中启动,它就会保留旧图像。
我做错了吗?如何确保更新docker镜像?
答案 0 :(得分:4)
在分析AWS ECS日志后,我发现问题出在ECS Docker身份验证中。
要解决这个问题,我已将以下数据添加到文件/etc/ecs/ecs.config
@Html.DropDownListFor(m => m.WordTypes,
(IEnumerable<SelectListItem>)Mapper.Map(
Model.WordTypes,
typeof(IList<SelectListItemBase>),
typeof(IList<SelectListItem>))
)
只需用您自己的信息替换 YOUR_DOCKER_HUB_AUTH 和 YOUR_DOCKER_HUB_EMAIL ,它就能正常运行。
要查找此信息,您可以在自己的计算机上执行ECS_CLUSTER=default
ECS_ENGINE_AUTH_TYPE=dockercfg
ECS_ENGINE_AUTH_DATA={"https://index.docker.io/v1/":{"auth":"YOUR_DOCKER_HUB_AUTH","email":"YOUR_DOCKER_HUB_EMAIL"}}
,然后在〜/ .docker / config.json文件中查找数据
有关Private Registry Authentication主题的更多信息,请查看http://docs.aws.amazon.com/AmazonECS/latest/developerguide/Welcome.html