実現したいこと
ECRにマージした変更をECSのタスク定義の変更を行なってデプロイしようとしたところ、下記のエラーが発生してできません。
下記のエラーを解決させ、デプロイができるようにしたいです。
前提
CI上でPRをマージさせ作成したイメージをECRにプッシュした。
別のパイプライン上でECRからそのイメージを引っ張ってきてECSにデプロイを行おうとしたところ、エラーが発生している。
エンドポイントは設定をしていると考えておりまたIAMも付与しているため問題の原因がわからず苦戦している。
発生している問題・エラーメッセージ
ECSタスク起動時
1Task stopped with reason: Task failed to start 2Last Status: STOPPED 3Stop Code: TaskFailedToStart 4 5Container: your-container-name 6Last Status: STOPPED 7Reason: CannotPullContainerError: Error response from daemon: 8pull access denied for 123456789012.dkr.ecr.ap-northeast-1.amazonaws.com/your-repo, 9repository does not exist or may require 'docker login'
CloudWatch
12024-01-XX XX:XX:XX [ERROR] Failed to pull image: 2RequestError: send request failed 3caused by: Post "https://123456789012.dkr.ecr.ap-northeast-1.amazonaws.com/v2/": 4dial tcp: lookup 123456789012.dkr.ecr.ap-northeast-1.amazonaws.com: 5no such host
試したこと
- IAM権限の確認
- VCRエンドポイントの確認
- エラーログの確認
補足情報(FW/ツールのバージョンなど)
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "ecr:GetAuthorizationToken", "Resource": "" }, { "Sid": "pushToECR", "Effect": "Allow", "Action": [ "ecr:CompleteLayerUpload", "ecr:UploadLayerPart", "ecr:InitiateLayerUpload", "ecr:BatchCheckLayerAvailability", "ecr:PutImage", "ecr:BatchGetImage" ], "Resource": "" }, { "Sid": "ReadTaskDefinitions", "Effect": "Allow", "Action": [ "ecs:DescribeTaskDefinition" ], "Resource": "" }, { "Sid": "RegisterTaskDefinition", "Effect": "Allow", "Action": [ "ecs:RegisterTaskDefinition", "ecs:TagResource" ], "Resource": "" }, { "Sid": "UpdateService", "Effect": "Allow", "Action": [ "ecs:DescribeServices", "ecs:UpdateService" ], "Resource": "" }, { "Sid": "IAMPassExecutionRole", "Effect": "Allow", "Action": "iam:PassRole", "Resource": "arn:aws:iam::536237946585:role/ecsTaskExecutionRole" } ] }
以下について追記してください。
- デプロイの具体的な手順や環境の情報について
- 別のパイプライン上で…と書いてあるのでコマンドベースでしょうか。
- エンドポイントは設定しているとのことですが、何をどう設定しているのか
- IAMを付与しているということですが、これはどこに設定したロールのポリシーなのか
- jsonはフォーマットしてから貼ってください

あなたの回答
tips
プレビュー