【问题标题】:testdriven.io flask react AWS course chapter 9 codebuild error. All phases pass except the post_build phasetestdriven.io 烧瓶反应 AWS 课程第 9 章代码构建错误。除 post_build 阶段外,所有阶段均通过
【发布时间】:2020-09-02 17:55:11
【问题描述】:
有日志片段:
[Container] 2020/09/02 16:36:03 Running command docker push $AWS_ACCOUNT_ID.dkr.ecr.$AWS_REGION.amazonaws.com/test-driven-users:prod
no basic auth credentials
COMMAND_EXECUTION_ERROR: Error while executing command: docker push $AWS_ACCOUNT_ID.dkr.ecr.$AWS_REGION.amazonaws.com/test-driven-users:prod. Reason: exit status 1
[Container] 2020/09/02 16:36:03 Phase complete: POST_BUILD State: FAILED
为什么它使用basic auth 而不是令牌?如何解决此错误?
【问题讨论】:
标签:
amazon-web-services
basic-authentication
credentials
amazon-ecr
testdriven.io
【解决方案1】:
这些错误有点误导。实际的失败在于 buildspec.yml post_build 命令。注释掉这些命令“修复”了构建。这些命令由教程提供:
docker push $AWS_ACCOUNT_ID.dkr.ecr.$AWS_REGION.amazonaws.com/test-driven-users:prod
docker push $AWS_ACCOUNT_ID.dkr.ecr.$AWS_REGION.amazonaws.com/test-driven-client:builder
docker push $AWS_ACCOUNT_ID.dkr.ecr.$AWS_REGION.amazonaws.com/test-driven-client:prod
从命令行运行它们我得到这个:
推送指的是存储库 [###########.dkr.ecr.us-west-1.amazonaws.com/test-driven-users]
6f23####16de: Layer already exists
5317####098c: Layer already exists
...
所以我猜如果它已经存在,那就是“失败”。