2026年3月23日

Copilot deployでdigestがずれたときのメモ

今日のハマりどころメモ。

copilot svc deploy で build と push は通るのに、ECS の task が CannotPullContainerError で起動しないことがあった。
原因は、docker コマンドの先が Podman になっていて、ローカルで見えている digest と ECR 側の digest がずれていたことだった。

  • deploy 自体は進む
  • task definition には repo@sha256:... が入る
  • ECR 側にその digest がない
  • 結果として task が image を pull できずに落ちる

対処として、Docker Desktop を起動して Podman ではなく Docker を使うようにしたらdeploy が通った。

確認の流れ

  • docker info で、いまどの runtime を見ているか
  • task definition に入った digest と ECR 上の digest が一致しているか
  • アプリのコードや環境変数より前に、container runtime の差分を疑う

そもそもデプロイをローカルからやってるのがおかしくはある