CannotPullContainerError: inspect image has been retried 1 timeの解決


ECSでタスクを実行した時に、

CannotPullContainerError: inspect image has been retried 1 time(s): failed to resolve ref "xxxxxxxxxxxxxxx.dkr.ecr.ap-northeast-1.amazonaws.com/google-calender-line-notify:latest": xxxxxxxxxxx.dkr.ecr.ap-northeast-1.amazonaws.com/google-calender-line-not...

というエラーが発生しました。

https://aws.amazon.com/jp/premiumsupport/knowledge-center/ecs-pull-container-error/
のどれにも当てはまりませんでした。

結論

  • タスク定義のコンテナのイメージURIにタグを含めていなかった
  • デフォルトでlatestタグのついたイメージをpullしようとする
  • ECRの該当リポジトリにlatestタグのついたイメージがなかった

簡単な説明

タスク定義でイメージURIを指定すると思いますが、
zzzzzzzzzzzz.dkr.ecr.ap-northeast-1.amazonaws.com/google-calender-line-notify と、タグを指定していませんでした。

エラーログを見ると、latestタグをpullしようとしている。

CannotPullContainerError: inspect image has been retried 1 time(s): failed to resolve ref "xxxxxxxxxxxxxxx.dkr.ecr.ap-northeast-1.amazonaws.com/google-calender-line-notify:latest": xxxxxxxxxxx.dkr.ecr.ap-northeast-1.amazonaws.com/google-calender-line-not...

該当リポジトリにはlatestタグのついたイメージがないのでエラーになっていた。
ということでした。

該当リポジトリにlatestタグを追加 or タスク定義で存在するタグを設定で解決しました。