Anhänge sind OCI-Artefakte und können nur an folgenden Orten gespeichert werden: Repositories im Docker-Format.
Hinweise
- Wenn Sie noch keins haben, erstellen Sie ein Standard-Repository im Docker-Format.
- (Optional) Konfigurieren Sie Standardeinstellungen für Google Cloud CLI-Befehle.
Erforderliche Rollen
Bitten Sie Ihren Administrator, Ihnen die folgenden IAM-Rollen für das Repository zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Verwalten von Anhängen benötigen:
-
Anhänge ansehen und herunterladen:
Artifact Registry-Leser (
roles/artifactregistry.reader
) -
So erstellen Sie Anhänge:
Artifact Registry-Autor (
roles/artifactregistry.writer
) -
Anhänge löschen:
Repository-Administrator für Artifact Registry (
roles/artifactregistry.repoAdmin
)
Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.
Sie können die erforderlichen Berechtigungen auch über benutzerdefinierte Rollen oder andere vordefinierte Rollen erhalten.
Oras einrichten (optional)
Zusätzlich zur gcloud CLI können Sie auch Oras verwenden, um Anhänge zu erstellen, aufzulisten und herunterzuladen.
Installieren Sie Oras 1.2 oder höher. Zur Bestätigung Ihre Version, führen Sie den Befehl
oras version
aus.Konfigurieren Sie Oras für die Authentifizierung bei Artifact Registry.
Anhänge erstellen
Sie können einen Anhang mit der gcloud CLI oder Oras erstellen.
gcloud
Ersetzen Sie folgende Werte, bevor sie einen der Befehlsdaten verwenden:
ATTACHMENT
: der voll qualifizierte Name des Anhangs. Beispiel:projects/my-project/locations/us-west1/repositories/my-repo/attachments/my-attachment
. Alternativ können Sie auch nur die Anhangs-ID angeben und die--location
und--repository
-Flags.TARGET
: Der vollständige Versionsname oder der Artifact Registry-URI des Artefakts, auf das sich der Anhang bezieht. Sie können entweder den Digest oder das Tag verwenden. Beispiel:us-west1-docker.pkg.dev/my-project/my-repo/my-image:tag1
.TYPE
: dietype
des Anhangs . Dies muss den OCI-Spezifikationen für das AttributartifactType
entsprechen.ATTACHMENT_NAMESPACE
: a Variable für Anhänge, die die Datenquelle des Anhangs identifiziert. Beispiel:example.com
.FILES
: eine durch Kommas getrennte Liste lokaler Dateien, die in den Anhang aufgenommen werden sollen.
Führen Sie folgenden Befehl aus:
Linux, macOS oder Cloud Shell
gcloud artifacts attachments create ATTACHMENT \ --target=TARGET \ --type=TYPE \ --attachment-namespace=ATTACHMENT_NAMESPACE \ --files=FILES
Windows (PowerShell)
gcloud artifacts attachments create ATTACHMENT ` --target=TARGET ` --type=TYPE ` --attachment-namespace=ATTACHMENT_NAMESPACE ` --files=FILES
Windows (cmd.exe)
gcloud artifacts attachments create ATTACHMENT ^ --target=TARGET ^ --type=TYPE ^ --attachment-namespace=ATTACHMENT_NAMESPACE ^ --files=FILES
gcloud artifacts attachments create
.
Øras
Wenn Sie einen Anhang mit Oras erstellen, generiert Artifact Registry eine zufällige UUID, die als Anhangsname verwendet wird.
Bevor Sie den Befehl ausführen, ersetzen Sie die folgenden Werte:
ARTIFACT_TYPE
: dieartifactType
des Anhangs.IMAGE_URI
: der URI für den Image-Container, auf den der Anhang verweist.FILE
: eine lokale Datei in als Metadaten in den Anhang aufnehmen.MEDIA_TYPE
: diemediaType
der Ebene.
oras attach --artifact-type ARTIFACT_TYPE IMAGE_URI FILE:MEDIA_TYPE
Im folgenden Beispiel wird ein Anhang aus einer Datei (hello-world.txt
) erstellt, die sich auf ein Container-Image (my-image
) bezieht, das durch seinen URI und sein Tag identifiziert wird:
oras attach --artifact-type doc/example \
us-west1-docker.pkg.dev/my-project/my-repo/my-image:tag1 \
hello-world.txt:application/vnd.me.hi
Wobei:
doc/example
definiert dieartifactType
-Eigenschaft des Anhangs.us-west1-docker.pkg.dev/my-project/my-repo/my-image:tag1
ist der URI mit dem Tag der Container-Image-Version des Anhangs auf die sie sich beziehen.hello-world.txt
ist die lokale Datei, die die Daten des Anhangs enthält.application/vnd.me.hi
definiert diemediaType
des Ebene.
Eine vollständige Anleitung und weitere Beispiele finden Sie in der Dokumentation zu oras attach
.
Listenanhänge
Ein Container-Image kann beliebig viele Anhänge haben, die darauf verweisen. Sie können Anhänge mit der Google Cloud Console, der gcloud CLI oder Oras auflisten.
Console
Öffnen Sie in der Google Cloud Console die Seite Repositories.
Klicken Sie auf den Namen des Repositorys, um die Images in Ihrem Repository aufzurufen.
Klicken Sie auf den Namen des Bildes, um die Versionen aufzurufen.
Klicken Sie auf die entsprechende Image-Version.
Um die Anhänge für diese Version anzuzeigen, klicken Sie auf den Tab Anhänge.
gcloud
Ersetzen Sie folgende Werte, bevor sie einen der Befehlsdaten verwenden:
TARGET
: der vollständig qualifizierte Versionsname oder den Artifact Registry-URI des Artefakts, für das Sie Anhänge auflisten möchten. Sie können entweder den Digest oder das Tag verwenden. Beispiel:us-west1-docker.pkg.dev/my-project/my-repo/my-image:tag1
.
Führen Sie folgenden Befehl aus:
Linux, macOS oder Cloud Shell
gcloud artifacts attachments list \ --target=TARGET
Windows (PowerShell)
gcloud artifacts attachments list ` --target=TARGET
Windows (cmd.exe)
gcloud artifacts attachments list ^ --target=TARGET
gcloud artifacts attachments list
-Befehl.
Øras
Bevor Sie den Befehl ausführen, ersetzen Sie die folgenden Werte:
IMAGE_URI
: Der URI des Zielbilds, auf das alle aufgeführten Anhänge verweisen.
oras discover --distribution-spec v1.1-referrers-api IMAGE_URI
Im folgenden Beispiel werden Anhänge für das Container-Image my-image
aufgelistet,
durch URI und Tag identifiziert:
oras discover --distribution-spec v1.1-referrers-api \
us-west1-docker.pkg.dev/my-project/my-repo/my-image:tag1
Wobei:
v1.1-referrers-api
ist die verwendete Referrer API. Weitere Informationen finden Sie unter Details finden Sie in der Vertriebsspezifikation.us-west1-docker.pkg.dev/my-project/my-repo/my-image:tag1
der URI mit dem Tag der aufzulistenden Container-Image-Version ist für die Anhänge hinzu.
Eine vollständige Anleitung und weitere Beispiele finden Sie in der oras discover
-Dokumentation.
Anhänge herunterladen
Sie können Anhänge über die gcloud CLI oder Oras herunterladen.
gcloud
Ersetzen Sie folgende Werte, bevor sie einen der Befehlsdaten verwenden:
ATTACHMENT
: der voll qualifizierte Name des Anhangs. Beispiel:projects/my-project/locations/us-west1/repositories/my-repo/attachments/my-attachment
. Alternativ können Sie hier nur die Anhang-ID angeben und die Flags--location
und--repository
verwenden.DESTINATION
: der Pfad in Ihrem lokalen Dateisystem, in das der Anhang heruntergeladen werden soll.
Führen Sie folgenden Befehl aus:
Linux, macOS oder Cloud Shell
gcloud artifacts attachments download ATTACHMENT \ --destination=DESTINATION
Windows (PowerShell)
gcloud artifacts attachments download ATTACHMENT ` --destination=DESTINATION
Windows (cmd.exe)
gcloud artifacts attachments download ATTACHMENT ^ --destination=DESTINATION
ATTACHMENT
können Sie auch den
--oci-version-name
, gefolgt vom vollständigen Versionsnamen des Anhangs oder
Artifact Registry-URI. Sie können entweder den Digest oder das -Tag verwenden. Beispiel: projects/my-project/locations/us-west1/repositories/my-repo/packages/my-package/versions/sha256:abc123
.Weitere Informationen finden Sie in der
gcloud artifacts attachments download
-Befehl.
Oras
Bevor Sie den Befehl ausführen, ersetzen Sie die folgenden Werte:
DESTINATION
: das Zielverzeichnis für den Anhang.ATTACHMENT_URI
: die URI des herunterzuladenden Anhangs. Dies ist der URI für den Image-Container, bezieht sich auf den Anhang, gefolgt vom eindeutigen SHA-Wert des Anhangs.
oras pull -o DESTINATION ATTACHMENT_URI
Im folgenden Beispiel wird ein Anhang heruntergeladen, der anhand seines URI und seiner Prüfsumme identifiziert wird:
oras pull -o . us-west1-docker.pkg.dev/my-project/my-repo/my-image@sha256:xxxx
Wobei:
-o .
benennt das aktuelle Verzeichnis als Downloadziel.us-west1-docker.pkg.dev/my-project/my-repo/my-image@sha256:xxxx
ist der Image-URI einschließlich des Digests des herunterzuladenden Anhangs.
Eine vollständige Anleitung und weitere Beispiele finden Sie in der Dokumentation zu oras pull
.
Anhänge löschen
Sie können Anhänge direkt über die Google Cloud Console oder die gcloud CLI löschen. Sie können Anhänge indirekt löschen, indem Sie die Container-Image, auf das sie sich bezieht.
Anhänge direkt löschen
Sie haben folgende Möglichkeiten, Anhänge direkt zu löschen:
Console
Öffnen Sie in der Google Cloud Console die Seite Repositories.
Klicken Sie auf den Namen des Repositorys, um die Images in Ihrem Repository aufzurufen.
Klicken Sie auf den Image-Namen, um die Versionen dieses Images zu sehen.
Klicken Sie auf die Version des Bildes, um sich die Anhänge anzusehen.
Klicken Sie auf den Tab Anhänge, um die Anhänge für diese Version aufzurufen.
Klicken Sie auf den Digest des Anhangs, den Sie löschen möchten.
Klicken Sie auf Delete.
Klicken Sie im Bestätigungsdialogfeld auf LÖSCHEN.
gcloud
Ersetzen Sie folgende Werte, bevor sie einen der Befehlsdaten verwenden:
ATTACHMENT
: der voll qualifizierte Name des Anhangs. Beispiel:projects/my-project/locations/us-west1/repositories/my-repo/attachments/my-attachment
. Alternativ können Sie hier nur die Anhang-ID angeben und die Flags--location
und--repository
verwenden.
Führen Sie folgenden Befehl aus:
Linux, macOS oder Cloud Shell
gcloud artifacts attachments delete ATTACHMENT
Windows (PowerShell)
gcloud artifacts attachments delete ATTACHMENT
Windows (cmd.exe)
gcloud artifacts attachments delete ATTACHMENT
gcloud artifacts attachments list
-Befehl.
Anhänge indirekt löschen
Wenn ein Container-Image gelöscht wird, werden auch alle verweisenden Anhänge gelöscht. Dies gilt sowohl für das manuelle Löschen von Container-Images Löschungen aufgrund von Bereinigungsrichtlinien.