タスク起動時のエラーメッセージ
CannotPullContainerError: httpReaderSeeker: failed open: content at https://docker.pkg.github.com/v2/<username>/<reponame>/<image>/manifests/sha256:1840562644708320d81c1852b65a297d5ccf890e4a822a8aaca01axxxxxxxxxx not found: not found
原因
Open Container Initiative (OCI) によって定義されている コンテナイメージ配布の
標準仕様である HTTP API V2 を GitHub Packages が一部満たしていないことに起因し、
コンテナランタイムが Containerd の場合に、イメージの pull に失敗します。
回避策
プラットフォームバージョン 1.3 以下を利用するか、その他のレジストリサービスを使用する必要があります。
2020/9/2 追記
パブリックベータとして発表された GitHub Container Registry では上記の問題が解決されています。
https://github.blog/2020-09-01-introducing-github-container-registry/
補足
Fargate に限らず、Conitainerd で動作する環境全てで Github Pakcages から
イメージの pull ができません。
Fargate については プラットフォームバージョン 1.4 以降、 コンテナランタイムが
Docker Engine から Containerd に置き換わっため、上記不具合の影響を受けます。
詳細: Fargate データプレーン
https://aws.amazon.com/jp/blogs/news/under-the-hood-fargate-data-plane/
プラットフォームバージョン 1.3 以下は Docker Engine で実行するため
この問題の影響を受けません。
Containerd の GitHub レポジトリにこの問題の issue があがっています。
2019年5月に起票され、2020年8月時点で解決されていませんが、
Github Packages 側の修正は進んでおり、近日中に動きがありそうな状況は確認できます。
GitHub Container Registry の使用により事象が解消される旨記載され、issue もクローズになりました。
containerd can't pull image from Github Docker Package Registry #3291
https://github.com/containerd/containerd/issues/3291
簡単ですが、以上です。
参考になれば幸いです。