Image 为什么可以';在docker swarm集群中自动从aws上的ecr提取图像?
使用此方法部署已构建为托管在ecr上的docker映像的应用程序:Image 为什么可以';在docker swarm集群中自动从aws上的ecr提取图像?,image,amazon-web-services,docker,docker-compose,docker-swarm,Image,Amazon Web Services,Docker,Docker Compose,Docker Swarm,使用此方法部署已构建为托管在ecr上的docker映像的应用程序: version: "3" services: web: image: [AWS_ECR_REPO_URL]/app0:latest deploy: replicas: 5 restart_policy: condition: on-failure resources: limits: cpus: "0.1"
version: "3"
services:
web:
image: [AWS_ECR_REPO_URL]/app0:latest
deploy:
replicas: 5
restart_policy:
condition: on-failure
resources:
limits:
cpus: "0.1"
memory: 50M
ports:
- "80:80"
networks:
- webnet
networks:
webnet:
部署它:
$ docker stack deploy -c docker-compose.yml app0
然后使用docker images
检查本地图像,根本找不到[AWS\u ECR\u REPO\u URL]/app0:latest
如果我自己进行回购,可以得到:
$ docker pull [AWS_ECR_REPO_URL]/app0:latest
我不知道为什么。- 如果要提取私有映像,请使用
输入您的凭据docker login
- 指定要登录到自托管注册表的服务器名称 docker登录服务器名称(本地主机)
- 对swarm使用
--带注册表验证
选项 docker堆栈部署--使用注册表验证
docker-pull[AWS\u-image]
。但无法通过运行docker stack deploy…
自动拉取。您是否检查过——使用注册表验证swarm(stack deploy)?这是关键。当我添加了——使用注册表身份验证时,它就可以工作了!谢谢