質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

88.58%

CodeBuildでECRにプッシュできない

解決済

回答 1

投稿 編集

  • 評価
  • クリップ 1
  • VIEW 510

nezu

score 15

前提・実現したいこと

codebuildでECRにイメージをプッシュしようとしているのですが、エラーが出て上手くいきません。

発生している問題・エラーメッセージ

COMMAND_EXECUTION_ERROR: Error while executing command: $(aws ecr get-login --region ${AWS_DEFAULT_REGION} --no-include-email). Reason: exit status 255

該当のソースコード

[buildspec.yml]
version: 0.2

phases:
  install:
    runtime-versions:
      docker: 18
  pre_build:
    commands:
      - echo Logging in to Amazon ECR...
      - aws --version
      - REPOSITORY_URI=${AWS_ACCOUNT_ID}.dkr.${AWS_DEFAULT_REGION}.amazonaws.com/${IMAGE_REPO_NAME}

   - $(aws ecr get-login --region ${AWS_DEFAULT_REGION} --no-include-email)
  build:
    commands:
      - echo Build started on `date`
      - echo Building the Docker image...
      - docker build -t ${IMAGE_REPO_NAME}:latest .
      - docker tag ${IMAGE_REPO_NAME}:latest ${REPOSITORY_URI}:latest
  post_build:
   commands:
      - echo Build completed on `date`
      - echo Pushing the Docker image...
      - docker push ${REPOSITORY_URI}:latest
      - echo Writing image definitions file...
      - printf '[{"name":"hoge","imageUri":"%s"}]' ${AWS_ACCOUNT_ID}.dkr.ecr.${AWS_DEFAULT_REGION}.amazonaws.com/hoge:latest > imagedefinitions.json
artifacts:
  files:
    - imagedefinitions.json

試したこと

codebuildのサービスロールにAmazonEC2ContainerRegistryFullAccessAmazonS3FullAccessをアタッチしました。
よろしくお願い致します。

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 過去に投稿した質問と同じ内容の質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

質問への追記・修正、ベストアンサー選択の依頼

  • yu_1985

    2020/04/17 13:06

    aws --version
    をビルドの途中で実行していますが、バージョンはどう出ていますか?

    キャンセル

  • nezu

    2020/04/17 14:23

    ビルドログは何も表示されて無いです。。。

    キャンセル

  • yu_1985

    2020/04/17 15:31

    CodeBuildに使っているイメージはどれでしょうか?

    あと、これは自分が知らないから聞きたいところなのと、多分質問とは関係ないところなんですが、runtimeにdockerって指定できましたっけ…?

    キャンセル

  • eyasy1217

    2020/04/18 14:21

    aws ecr get-loginではなく
    aws ecr get-login-passwordを使ったらどうなるでしょうか
    https://dev.classmethod.jp/articles/aws-cli-v2-ecr-get-login-password/

    キャンセル

回答 1

check解決した方法

+1

特権付与のとこがチェックついてなくて、dockerが上手く起動できていなかったみたいです。
ご回答いただいた皆様ありがとうございました。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 88.58%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る