通常情况下,AWS ECR镜像创建不成功的原因可能有多种,以下是可能的解决方法:
确认您有必要的权限,例如,需要访问ECR(Amazon上面存放容器镜像的服务)和Docker的权限。需要运行aws ecr get-login来创建docker登录令牌。
确认ECR仓库名称拼写正确,可以执行 aws ecr describe-repositories --repository-names REPO_NAME 来验证是否存在仓库
确认网络连接正常
确认您的IAM策略允许您上传到AWS ECR。本例中,ECRAdmin的策略需要在某个IAM角色或IAM用户上
代码示例:
以下示例展示如何使用AWS CLI在ECR中构建和推送Docker镜像。
# 建立连接
$(aws ecr get-login --no-include-email --region us-west-2)
# 构建Docker镜像
docker build -t YOUR_IMAGE_TAG .
# 创建ECR仓库
aws ecr create-repository --repository-name YOUR_REPO_NAME
# 标记镜像要推送到ECR中
docker tag YOUR_IMAGE_TAG AWS_ACCOUNT_ID.dkr.ecr.us-west-2.amazonaws.com/YOUR_REPO_NAME
# 推送镜像到ECR
docker push AWS_ACCOUNT_ID.dkr.ecr.us-west-2.amazonaws.com/YOUR_REPO_NAME