【问题标题】:Docker compose up [ecs context] with private repoDocker 用私有仓库组成 [ecs context]
【发布时间】:2023-04-09 05:44:01
【问题描述】:
尝试使用 docker-compose [ecs context] 将 compose.yml 上传到 aws;
在https://hub.docker.com/ 中有我的私人存储库。
- 创建ecs上下文,开始使用(docker上下文使用)
- 执行
docker login -> 登录成功
- 已执行
docker compose up
失败并返回错误
ServerService TaskFailedToStart:CannotPullContainerError:检查图像已重试 1 次:无法解析参考“docker.io/myrepo/server:latest”:拉取访问被拒绝,存储库不存在或可能需要授权:服务器消息:不足的范围:授权...'
我应该如何访问这个“docker ecs compose”工具?它是否与 aws 凭据有关?
【问题讨论】:
标签:
docker
docker-compose
amazon-ecs
【解决方案1】:
您想使用指向 secretsmanager ARN 的 x-aws-pull_credentials 密钥,如下所述:https://docs.docker.com/cloud/ecs-integration/#private-docker-images
使用docker secret 创建一个秘密:
echo '{"username":"joe","password":"hunter2"}' | docker secret create myToken -
arn:aws:secretsmanager:eu-west-3:12345:secret:myToken
在您的撰写文件中:
services:
worker:
image: mycompany/privateimage
x-aws-pull_credentials: "arn:aws:secretsmanager:eu-west-3:12345:secret:myToken"