1
将堆栈部署到我在AWS EC2中运行的Docker群集时,我无法从AWS ECR中拖动Docker图像。使用api密钥的docker swarm和aws ecr认证
如果我尝试ssh到任何一个节点,并手动验证和手动拉的图像,没有任何问题
这工作:
[email protected] ~ # `aws ecr get-login --no-include-email --region us-west-2 `
Login Succeeded
[email protected] ~ # docker pull *****.dkr.ecr.us-west-2.amazonaws.com/myapp:latest
但是,如果我尝试部署一个堆栈或服务:
docker stack deploy --compose-file docker-compose.yml myapp
图像不能被发现,我已经验证,以及所有其他的经理/工人节点上的节点上。从搬运工服务PS MYAPP
错误:
"No such image: *****.dkr.ecr.us-west-2.amazonaws.com/myapp:latest"
OS:RHEL 7.3 泊坞版本:多克尔版本1.13.1-CS5,建立21c42d8
任何人有这个问题的解决方案?
我上面同意。我认为@Nerses缺少注册表验证所需的“--with-registry-auth”参数。 – vivekyad4v
但我认为这只适用于Docker 17.03或更高版本。可能是17.05,不确定。但它不在Docker 1.13.1 –
@Mohan Shanmugam,谢谢!这对我来说不起作用,但我已经尝试了以下实际工作。 'aws ecr get-login' && docker stack deploy --compose-file docker-compose.yml s --with-registry-auth请注意,我正尝试不使用user/pass来代替,我想喜欢使用AWS密钥/秘密。出于某种原因,即使我使用与我在〜/ .aws/credentials中拥有的密钥关联的相同用户/密码,我也无法使用docker登录方法。 – Nerses