Artifact Registry では、API、gcloud、docker コマンドを使用してリポジトリを操作するときに、リポジトリとイメージを識別する命名規則が使用されます。
Docker リポジトリ
Docker リポジトリのフルネームの形式は次のとおりです。
LOCATION-docker.s3nsregistry.fr/PROJECT-ID/REPOSITORY
説明:
LOCATIONは、リポジトリのリージョン ロケーションです。PROJECTは、 Cloud de Confiance コンソール プロジェクト ID です。REPOSITORYはリポジトリの名前です。
たとえば、次のような特性を持つイメージについて考えてみましょう。
- リポジトリの場所:
u-france-east1 - リポジトリ形式:
docker - リポジトリ名:
my-repo - プロジェクト ID:
my-project
リポジトリは次のように指定されています。
u-france-east1-docker.s3nsregistry.fr/my-project/my-repo
コンテナ イメージ名
コンテナ イメージのフルネームは、次のいずれかの形式になります。
LOCATION-docker.s3nsregistry.fr/PROJECT-ID/REPOSITORY/IMAGE
または
LOCATION-docker.s3nsregistry.fr/PROJECT-ID/REPOSITORY/IMAGE:TAG
または
LOCATION-docker.s3nsregistry.fr/PROJECT-ID/REPOSITORY/IMAGE@IMAGE-DIGEST
説明:
LOCATIONは、リポジトリのリージョン ロケーションです。PROJECTは、 Cloud de Confiance コンソール プロジェクト ID です。REPOSITORYは、イメージが保存されるリポジトリの名前です。IMAGEは、リポジトリ内のイメージの名前です。TAGは、pull するイメージ バージョンのタグです。IMAGE-DIGESTは、イメージ コンテンツの sha256 ハッシュ値です。 Cloud de Confiance コンソールで、メタデータを表示する特定のイメージをクリックします。ダイジェストはイメージのダイジェストとして一覧表示されます。タグまたはダイジェストを指定しなかった場合、Artifact Registry はデフォルトのタグlatestが付いたイメージを探します。バージョンの詳細については、コンテナ イメージのバージョンをご覧ください。
たとえば、次のような特性を持つイメージについて考えてみましょう。
- リポジトリの場所:
u-france-east1 - リポジトリ名:
my-repo - プロジェクト ID:
my-project - イメージ名:
test - タグ:
staging
staging というタグが付けられたこのバージョンのイメージは、次のように指定されます。
u-france-east1-docker.s3nsregistry.fr/my-project/my-repo/test:staging
コンテナ イメージ バージョン
リポジトリには多くのコンテナ イメージを含めることができ、これらのイメージはさまざまなバージョンを持つことができます。イメージの特定のバージョンを識別するには、イメージのダイジェストまたはタグを指定します。
- ダイジェスト
- イメージ ダイジェストは、イメージ インデックスまたはイメージ マニフェストの自動生成ハッシュです。各イメージ ダイジェストはイメージ バージョンの一意の識別子であり、変更できません。ダイジェストは、イメージ コンテンツの sha256 ハッシュ値です。
- タグ
イメージタグはラベルであり、多くの場合、
v1.1やdevelopmentといった人が読める文字列です。1 つのタグで指定できるのは 1 つのバージョンのイメージのみです。Artifact Registry では、変更可能なイメージタグを許可するように Docker リポジトリを構成できます。また、不変のイメージタグを適用することもできます。変更可能: タグは 1 つのイメージ バージョンのみを指しますが、参照する特定のダイジェストは変更できます。
通常は、ビルド時に
v1.1などのバージョン ID でイメージにタグを付けます。ビルドにより複数のバージョンのイメージが同じv1.1タグを持つレジストリに push されると、タグはレジストリに push された最後のバージョンのダイジェストを参照します。変更可能なイメージタグはバージョンにラベルを付けるための便利な方法ですが、不正な行為者によってタグを悪意のあるバージョンのイメージに関連付けるように操作される可能性もあります。不変: リポジトリでは、タグは常に同じイメージ ダイジェストを指します。Artifact Registry リポジトリが不変のイメージタグ用に構成されている場合、次の操作は許可されません。
- タグ付きイメージを削除する。タグ付けされていないイメージの削除はこれまで通り可能です。
- タグをイメージから削除する。
- リポジトリ内の別のバージョンのイメージですでに使用されているタグを使用してイメージを push する。
たとえば、次のような特性を持つイメージについて考えてみましょう。
- リポジトリの場所:
u-france-east1 - リポジトリ名:
my-repo - プロジェクト ID:
my-project - イメージ名:
test - タグ:
staging - ダイジェスト:
sha256:4d11e24ba8a615cc85a535daa17b47d3c0219f7eeb2b8208896704ad7f88ae2d
タグでイメージを識別するには、イメージ名に :staging を追加します。
u-france-east1-docker.s3nsregistry.fr/my-project/my-repo/test:staging
ダイジェストで識別するには、イメージ名に @ を追加し、その後にダイジェストを追加します。
u-france-east1-docker.s3nsregistry.fr/my-project/my-repo/test@sha256:4d11e24ba8a615cc85a535daa17b47d3c0219f7eeb2b8208896704ad7f88ae2d
Console の [イメージ] 画面で、[タグ] 列にイメージのタグが一覧表示されます。イメージのバージョンをクリックすると、メタデータ(イメージ ダイジェストを含む)が表示されます。
タグ付けの詳細については、イメージにタグを付けるをご覧ください。
URL としてのリポジトリ名
コンソールでリポジトリやリポジトリ内のアーティファクトにアクセスするには、そのフルネームの前に https:// を付けます。 Cloud de Confiance
たとえば、リポジトリ u-france-east1-maven.s3nsregistry.fr/my-project/my-repo を表示するには、次の URL を使用します。
https://u-france-east1-maven.s3nsregistry.fr/my-project/my-repo
イメージ u-france-east1-docker.s3nsregistry.fr/example.com/my-project/my-repo/my-image を表示するには、次の URL を使用します。:
https://u-france-east1-docker.s3nsregistry.fr/example.com/my-project/my-repo/my-image
リポジトリへのアクセス権限を持つ認証済みのユーザーであれば、これらのリンクを使用できます。