Artifact Registry を操作するときにすべてのアーティファクト形式に適用されるトラブルシューティングの手順について説明します。アーティファクト形式に固有の問題については、形式固有のページをご覧ください。
コマンド内の無効なリポジトリまたはロケーション
次の情報は、無効なリポジトリの場所または無効なリポジトリ名のエラーを診断するのに役立ちます。
gcloud のロケーションとリポジトリのデフォルト
Google Cloud CLI でデフォルトのリポジトリとロケーションを設定して、gcloud artifacts
コマンドから --location
フラグと --repository
フラグを省略できるようにするには、フラグと対応する値で失敗したコマンドの実行を試行してください。特定のコマンドの構文の詳細を確認するには、--help
フラグを指定してコマンドを実行します。
デフォルトのリポジトリ設定は、--repository
フラグを指定せずにリポジトリ名を指定した gcloud artifacts
コマンドには適用されません。たとえば、次の例のように、gcloud artifacts repositories describe コマンドでリポジトリ名を指定する必要があります。
gcloud artifacts repositories describe my-repo --location=us-west1
コマンドが引き続き失敗する場合は、リポジトリまたはロケーションに有効な値が指定されていることを確認する必要があります。
リポジトリの場所
サポートされているすべての Artifact Registry のロケーションを一覧表示するには、次のコマンドを実行します。
gcloud artifacts locations list
組織のポリシーにはロケーションの制限が含まれている場合があります。Artifact Registry では、これらの制限がリポジトリの作成時に適用されます。Artifact Registry は、ロケーションの制限より古いリポジトリに遡及的にポリシーを適用しません。
gcloud コマンドのリポジトリ名
リポジトリを一覧表示すると、指定したプロジェクトまたはロケーションのリポジトリ名を表示できます。
プロジェクト内のすべてのリポジトリを一覧表示するには、次のコマンドを実行します。
gcloud artifacts repositories list --project=PROJECT-ID \
--location=all
ロケーション内のすべてのリポジトリを一覧表示するには、次のコマンドを実行します。
gcloud artifacts repositories list --project=PROJECT-ID \
--location=LOCATION
PROJECT-ID は実際の Google Cloud プロジェクト ID に、LOCATION はリポジトリのロケーションに置き換えます。
このコマンドは、次の例のように、各リポジトリの情報を返します。
REPOSITORY: my-repo
FORMAT: MAVEN
DESCRIPTION:
LOCATION: us-east1
LABELS:
ENCRYPTION: Google-managed key
CREATE_TIME: 2021-09-23T19:39:10
UPDATE_TIME: 2021-09-23T19:39:10
REPOSITORY
の値は、リポジトリ名をパラメータとして含む gcloud artifacts
コマンドで使用する値です。
たとえば、次のコマンドでは --repository
フラグを使用しています。
gcloud artifacts packages list --location=us-east1 --repository=my-repo
このコマンドでは、フラグなしでリポジトリ名のみを使用します。
gcloud artifacts repositories describe my-repo --location=us-west1
サードパーティ クライアントでのリポジトリ名
サードパーティのクライアントの場合、通常はクライアントの構成時にフル リポジトリ パス(us-east1-docker.pkg.dev/my-project/my-repo
など)を使用します。次に、クライアントの規則に従ってパッケージをアップロードおよびダウンロードします。クライアントの構成と使用方法の詳細については、使用している形式のドキュメントをご覧ください。
Container Registry から移行する場合は、すべてのイメージパスに Artifact Registry リポジトリ名が含まれている必要があります。プロジェクト ID のみを含むイメージパスを指定することはできません。
- 無効なパス:
us-east1-docker.pkg.dev/my-project/my-image
- 有効なパス:
us-east1-docker.pkg.dev/my-project/my-repo/my-image
削除されていないリポジトリから push または pull することはできません
Google Cloud プロジェクトの削除を取り消した後や、Artifact Registry API を無効にした後に有効にした後は、リポジトリは正常に動作しなくなります。
Artifact Registry API を無効にするか、プロジェクトを削除すると、Artifact Registry サービスが使用できなくなります。Artifact Registry は 7 日後にリポジトリデータを削除します。
詳しくは、Google Cloud Platform におけるデータの削除をご覧ください。