Container Registryを使用しているときに Docker イメージをプッシュまたはプルできないのはなぜですか?
IBM Cloud® Container Registryを使用している場合、 Docker イメージのプッシュまたはプルが失敗します。 割り当て量を超過した場合や資格情報が無効である場合など、さまざまなメッセージを受け取ることがあります。
Docker イメージをプッシュまたはプルするコマンドを実行すると、エラー・メッセージを受け取る。 このエラー・メッセージは、根本原因によって異なります。 以下のエラー・メッセージは、受け取る可能性のあるエラー・メッセージです。
- シナリオ A.
unauthorized: authentication required
- シナリオ B
denied: You are not authorized to access the specified resource.
- シナリオ C
unauthorized: An error occurred when authenticating your request with IBM Cloud. Clear your browser cookies, log in to IBM Cloud, and try your request again.
- シナリオ D.
Your account has exceeded its pull traffic quota for the current month.
詳しくは、 割り当て量に関するエラーが表示されるのはなぜですか? を参照してください。 - シナリオ E
Your account has exceeded its image storage quota for the current month.
支援については、 割り当て量に関するエラーが表示されるのはなぜですか? を参照してください。
考えられる原因は次のとおりです。
シナリオ A、B、および C の場合、考えられる原因は以下のとおりです。
- Docker がインストールされていません。
- Docker クライアントが IBM Cloud Container Registry にログインしていない。
- IBM Cloud アクセス・トークンユーザーのサービス・プロバイダー資格情報を使用する代わりに、コンシューマーがユーザーに代わって保護リソースにアクセスするために使用する値。 の有効期限が切れました。
この問題は、以下の方法で修正できます。
シナリオ A、B、および C の場合、以下のタスクを実行します。
- コンピューターに必ず Docker がインストール済みであるようにします。
- Docker のインストール・パスを確認します。
ibmcloud login
を実行して IBM Cloud にログインします。 次に、IBM Cloud Container Registry CLI に、ibmcloud cr login
を実行してログインします。