このページでは、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 があることを確認します。この 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
ファイルを構成します。