我已经部署了守望台,它会自动更新 docker swarm swarm 内的运行docker容器。
我在两个 AWS EC2 服务器上运行此Docker群,并将AWS ECR用作Docker注册表。
避免aws ecr get-login
,我已经使用了 Amazon ECR Docker凭据凭证助手,它自动在Docker Push/Docker Pull上自动获得Amazon ECR的凭据,而无需登录12小时。
问题是watch望塔正在抛出一个错误:
time =" 2019-03-12T03:41:10z" latve = infor msg ="无法更新容器/crmproxy.1.wop3c1u2qktbkab8rukrrrgr6,err ='daemon的错误='daemon的错误响应:damon的错误响应:dual caste dect and dulAmazonaws.com/crm,存储库不存在或可能需要" Docker登录"。
我确定这不是登录到ECR。我使用 docker-compose.yml file。
这是docker-compose.yml文件上的watchtower配置。
watchtower:
image: v2tec/watchtower
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- ~/.docker/config.json:/config.json
command: --interval 30
在我对这个问题的研究中,我看到其他人与我有相同的问题,并且有人把它固定了,但我不明白。
这是我发现的:解决方案不清楚
我不完全知道这个答案是正确的。但是他说:
问题是我将Docker作为根。现在安装 Amazon Linux AMI的EC2使用者和工作
请帮助我避免我面临的问题。我尝试了很多次。任何帮助对我都是适当的。
图像URL中有一个附加点。这可能是您问题的原因吗?
00000000000.dkr..amazonaws.com/crm
^
另外,您可以将EC2用户添加到Docker组中,以使其还可以执行Docker命令:sudo usermod -aG docker ec2-user
。无需重新安装。