将 docker 映像推送到 ECR 时,Github 操作失败

Kus*_*iya 6 amazon-web-services docker amazon-ecr github-actions

我指的是官方github指南来设置自动部署到ECS https://docs.github.com/en/actions/deployment/deploying-to-your-cloud-provider/deploying-to-amazon-elastic-容器服务

我的deploy.yaml工作流程看起来与上面链接中的工作流程相同,只是替换了正确的环境变量

我已完成所需的所有步骤,并已在 AWS 上启动并运行所有必要的基础设施。但是当工作流程被触发时,它总是无法将 docker 镜像推送到 ECR。重试几次后,退出

EOF
Error: Process completed with exit code 1.
Run Code Online (Sandbox Code Playgroud)

从我在 github 操作上看到的输出,我相信登录 ecr 步骤成功,并且还可以确认它正在推送到正确的 ECR 存储库,但由于某种原因推送失败。

我已经将图像推送到本地存储库并且它可以工作,所以我认为 AWS 方面没有任何问题。

Kus*_*iya 9

我意识到自己的错误。在我应该指定存储库名称的环境文件中,我指定了完整的存储库 ID,这意味着如果存储库名为 my-ecr-repo,我会意外地写入 .dkr.ecr.us-east-1 .amazonaws.com/my-ecr-repo 将名称设置为 my-ecr-repo 解决了问题


小智 7

使用 aws-actions/configure-aws-credentials@v1 登录 AWS 账户时,我指定了错误的 aws-region。

AWS 区域应与 ecr 存储库区域相同。否则,即使登录成功,推送也会失败。