このページでは、Artifact Registry のリモート リポジトリの問題を解決する方法について説明します。
Artifact Registry の標準リポジトリの問題を解決する方法については、一般的なトラブルシューティングをご覧ください。
パッケージをリクエストする際のエラー
アーティファクトがリモート リポジトリにキャッシュされていない場合、アップストリーム リポジトリに問題がある場合に、いくつかのエラーが返されることがあります。
404 エラー
次の問題は、リクエストされたアーティファクトがアップストリーム リポジトリに存在しない場合に発生します。
Received invalid response from external repository; url=URL.
この問題を解決するには、アーティファクト名とバージョンが正しいこと、アップストリーム リポジトリに存在することを確認してください。
429 エラー
アップストリームの読み取り上限を超えると、次の問題が発生します。
Resource has been exhausted (e.g. check quota).
この問題を解決するには、1 分ほど待ってからもう一度試してください。アップストリーム読み取りの上限の詳細については、リモート リポジトリの上限をご覧ください。
502(不正なゲートウェイ)エラー
次の問題は、アップストリーム リポジトリがエラーコードで応答すると発生します。エラー メッセージの詳細は、アップストリーム リポジトリのエラーによって異なります。
Received invalid http status code httpStatusCode from external repository; url=URL.
Received invalid redirect URL lastRequestedURL from external repository.
External repository returned unexpected EOF for url=URL.
Fetch was denied by external repository's robots.txt; url=URL
Received invalid redirect URL from external repository; url=URL. If the failures persist, your remote repository upstream URI may be misconfigured.
Received invalid response from external repository; url=URL.
この問題を解決するには、アップストリーム リポジトリ エラーの原因を調べます。
504(ゲートウェイ タイムアウト)
次の問題は、アップストリーム リポジトリがオフラインであるか、接続できない場合に発生します。エラー メッセージの詳細は、タイムアウトが発生するタイミングによって異なります。
Timeout while calling external repository; url=URL.
Timeout before connecting to external repository; url=URL
この問題を解決するには、正しいアップストリーム URI があるか、正しい場合はアップストリーム ソースが停止しているかどうかを確認します。
OS パッケージ
このセクションでは、OS パッケージで発生する可能性があるリモート リポジトリのエラーを一覧表示し、それぞれのエラーの修正方法について説明します。
OS パッケージの標準リポジトリの問題を解決する方法については、OS パッケージのトラブルシューティングをご覧ください。
エラー Can not load
件
バージョンまたはアーキテクチャを使用してパッケージをインストールすると、次の問題が発生します。たとえば、nano-2.3.1-10.el7.x86_64.rpm
のインストールを試みた場合。
Can not load RPM file: nano-2.3.1-10.el7.x86_64.rpm
Could not open: nano-2.3.1-10.el7.x86_64.rpm
この問題を解決するには、パッケージの名前のみを使用してパッケージをリクエストします。たとえば、nano-2.3.1-10.el7.x86_64.rpm
ではなく nano
をインストールします。
Yum の優先順位付け
次の問題は、パッケージが想定どおりにリモート リポジトリからインストールされない場合、またはリモートがバックアップとして使用されることを想定してインストールされる場合に発生します。
デフォルトでは、Yum はリポジトリの名前に基づいて優先するリポジトリを決定します。Yum は、まずリポジトリ名をアルファベット順にパッケージをインストールしようとします。そのリポジトリでパッケージが見つからない場合は、アルファベットの降順に各リポジトリを試し続けます。
多くの場合、デフォルトのリポジトリは [base]
または [baseos]
と呼ばれます。リモート リポジトリの名前が数字で始まるか、アルファベットで [base]
よりも前に来る場合は、デフォルトよりも前に試行されます。リモート リポジトリの名前がアルファベットで [base]
の後にある場合は、デフォルトの後に試行されます。
この問題を解決するには、リポジトリの名前を変更するか、yum.conf
マニュアル ページで説明されているフラグを使用して yum.conf
ファイルを構成します。