0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

ECS Fargateを起動時に「CannotPullContainerError」が出てしまう場合の対処法

Last updated at Posted at 2021-01-16

FargateのタスクでDockerHubからイメージを取得したいときに起きたエラーです。
原因や対処法を紹介していきます。

「CannotPullContainerError」の原因

主な原因としては、サブネット上から外部ネットワークへの通信ができずに、imageのpullに失敗しているからです。

Fargate起動時の「CannotPullContainerError」への対処法

Fargate起動時の「CannotPullContainerError」への対処法を紹介していきます。

1.Fargateに設定されたサブネットが外部と通信できるようになっていない

Fargateに設定されたサブネットから外部への通信ができないと「CannotPullContainerError」のエラーになってしまいます。

サブネットに関連付けられているルートテーブルからインターネットゲートウェイまたはNATゲートウェイへの通信が許可されていないといけません。

更にそれらのインターネットゲートウェイまたはNATゲートウェイを通して、外部への通信を許可できる設定になっていないと上記のエラーが起きてしまいます。

インターネットゲートウェイの場合の設定

インターネットゲートウェイの場合は以下のように設定することで外部との通信ができるような設定にできます。
image.png

2.ネットワークACLのアウトバウンドが許可になっていない

ネットワークACLはデフォルトでは以下のように外部との接続は許可されていますが、設定で通信を許可されていない場合は外部との通信ができません。

上手く行かない場合は以下のように一度すべての通信を許可して試してみてください。

image.png

まとめ

「CannotPullContainerError」は外部との通信ができずに起きるエラーでした。AWSは正しく設定できていないと外部との通信ができないので気をつけましょう。

おかしなところや分からない所があったら指摘頂けると助かります。

参考

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?