Auf dieser Seite wird gezeigt, wie Sie Container-Images in einem Docker-Repository verwalten. Zur Image-Verwaltung gehört das Auflisten von Images in einem Repository, das Hinzufügen und Löschen von Tags, das Kopieren von Images in ein neues Repository und das Löschen von Images.
Informationen zum Hoch- und Herunterladen von Images finden Sie unter Images hoch- und herunterladen.
Hinweise
- Wenn das Ziel-Repository nicht vorhanden ist, erstellen Sie ein neues Repository.
- Prüfen Sie, ob Sie die erforderlichen Berechtigungen für das Repository haben.
- (Optional) Konfigurieren Sie die Standardeinstellungen für gcloud-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 Images benötigen:
-
Bilder, Dateien in Bildern und Tags ansehen:
Artifact Registry-Leser (
roles/artifactregistry.reader
) -
Images mit Artifact Registry taggen oder Tags bearbeiten:
Artifact Registry Writer (
roles/artifactregistry.writer
) -
Images löschen oder Tags entfernen:
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.
Bilder auflisten
Repository-Modi:Standard
Sie können die Images mit der Trusted Cloud console oder der gcloud CLI auflisten.
Console
So rufen Sie Bilder in einem Repository auf:
Öffnen Sie in der Trusted Cloud Console die Seite Repositories.
Klicken Sie auf das Repository mit dem Container-Image.
Klicken Sie auf ein Bild, um seine Versionen aufzurufen.
gcloud
So listen Sie alle Images im Standardprojekt, im Standard-Repository und am Standard-Speicherort auf, wenn die Standardwerte konfiguriert sind:
gcloud artifacts docker images list
Führen Sie den folgenden Befehl aus, um Images in einem Repository an einem bestimmten Speicherort aufzulisten:
gcloud artifacts docker images list LOCATION-docker.s3nsregistry.fr/PROJECT/REPOSITORY
Um alle Digests und Tags für ein bestimmtes Image aufzulisten, führen Sie folgenden Befehl aus:
gcloud artifacts docker images list LOCATION-docker.s3nsregistry.fr/PROJECT/REPOSITORY/IMAGE \
--include-tags
Ersetzen Sie die folgenden Werte:
- LOCATION ist der regionale Speicherort des Repositorys.
- PROJECT ist Ihre Trusted Cloud by S3NS Projekt-ID.
- REPOSITORY ist der Name des Repositorys, in dem das Image gespeichert ist.
- IMAGE ist der Name des Images im Repository.
--include-tags
zeigt alle Image-Versionen einschließlich Digests und Tags an. Wenn dieses Flag nicht angegeben wird, enthält die zurückgegebene Liste nur übergeordnete Container-Images.
Angenommen, Sie haben ein Image mit folgenden Merkmalen:
- Speicherort des Repositorys:
u-france-east1
- Repository-Name:
my-repo
- Projekt-ID:
my-project
- Image-Name:
my-image
Der vollständige Repository-Name lautet:
u-france-east1-docker.s3nsregistry.fr/my-project/my-repo
Der vollständige Image-Name lautet:
u-france-east1-docker.s3nsregistry.fr/my-project/my-repo/my-image
Weitere Informationen zum Format des Image-Namens finden Sie unter Repository- und Image-Namen.
Dateien auflisten
Repository-Modi:Standard
Sie können Dateien in einem Repository, Dateien in allen Versionen eines angegebenen Container-Images oder Dateien in einer bestimmten Version eines Images auflisten.
Für alle folgenden Befehle können Sie eine maximale Anzahl von zurückzugebenden Dateien festlegen, indem Sie dem Befehl das Flag --limit
hinzufügen.
So listen Sie alle Dateien im Standardprojekt, im Standard-Repository und am Standard-Speicherort auf, wenn die Standardwerte konfiguriert sind:
gcloud artifacts files list
Führen Sie den folgenden Befehl aus, um Dateien in einem angegebenen Projekt, Repository und Speicherort aufzulisten:
gcloud artifacts files list \
--project=PROJECT \
--repository=REPOSITORY \
--location=LOCATION
So listen Sie Dateien für alle Versionen eines bestimmten Container-Images auf:
gcloud artifacts files list \
--project=PROJECT \
--repository=REPOSITORY \
--location=LOCATION \
--package=PACKAGE
So listen Sie Dateien für eine bestimmte Container-Image-Version auf:
gcloud artifacts files list \
--project=PROJECT \
--repository=REPOSITORY \
--location=LOCATION \
--package=PACKAGE \
--version=VERSION
gcloud artifacts files list \
--project=PROJECT \
--repository=REPOSITORY \
--location=LOCATION \
--package=PACKAGE \
--tag=TAG
Ersetzen Sie die folgenden Werte:
LOCATION
: der regionale Standort des Repositorys.PROJECT
: Ihre Trusted Cloud by S3NS Projekt-ID.REPOSITORY
: der Name des Repositorys, in dem das Image gespeichert ist.PACKAGE
: der Name des ImagesVERSION
: Der Image-Digest, ein String, der mitsha256:
beginnt.TAG
: Das Tag, das dem Container-Image zugeordnet ist.
Beispiele
Sehen Sie sich die folgenden Bildinformationen an:
- Projekt:
my-project
- Repository:
my-repo
- Speicherort des Repositorys:
u-france-east1
- Image:
my-app
Mit dem folgenden Befehl werden alle Dateien im Repository my-repo
am Speicherort u-france-east1
im Standardprojekt aufgelistet:
gcloud artifacts files list \
--location=u-france-east1 \
--repository=my-repo
sha256:88b205d7995332e10e836514fbfd59ecaf8976fc15060cd66e85cdcebe7fb356
aufgelistet.
gcloud artifacts files list \
--project=my-project \
--location=u-france-east1 \
--repository=my-repo \
--package=my-app \
--version=sha256:88b205d7995332e10e836514fbfd59ecaf8976fc15060cd66e85cdcebe7fb356
1.0-dev
aufgelistet.
gcloud artifacts files list \
--project=my-project \
--location=u-france-east1 \
--repository=my-repo \
--package=my-app \
--tag=1.0-dev
Images taggen
Sie können vorhandene Images in einem Artifact Registry-Repository taggen oder die Images taggen, bevor Sie sie in ein Repository hochladen.
Images in einem Repository taggen
Repository-Modi:Standard
Sie können einem Image in einem Artifact Registry-Repository ein Tag mithilfe derTrusted Cloud console oder mit der Befehlszeile hinzufügen. In einem Repository kann ein Tag immer nur einmal für eine bestimmte Version eines Images vorkommen. Wenn es also mehrere Versionen eines Images gibt, gilt jedes Tag nur für eine dieser Versionen. Wenn Sie einem Image ein Tag hinzufügen, das bereits in Verwendung ist, wird das Tag von der ursprünglichen Version zur neu getaggten Version verschoben.
Console
So taggen Sie ein Image in einem Repository:
Öffnen Sie in der Trusted Cloud Console die Seite Repositories.
Klicken Sie auf das Image, um die Versionen des Images aufzurufen.
Wählen Sie die Image-Version aus, die getaggt werden soll.
Klicken Sie in der Zeile der ausgewählten Version auf Weitere Aktionen (
) und dann auf Tags bearbeiten.
Geben Sie neue Tags in das Feld ein und klicken Sie danach auf SPEICHERN.
gcloud
Um Images in einem Repository zu taggen, geben Sie die Image-Version mithilfe des Image-Digests oder des Tags an und dann das Tag, das hinzugefügt werden soll. Führen Sie einen der folgenden Befehle aus:
gcloud artifacts docker tags add IMAGE-VERSION TAG
Wo
IMAGE-VERSION
ist der vollständige Name der Image-Version, die getaggt werden soll, unter Verwendung des Image-Digests oder eines vorhandenes Tags für die Image-Version.TAG
ist der vollständige Name des Tags, das Sie hinzufügen möchten.
Angenommen, Sie haben ein Image mit folgenden Merkmalen:
- Speicherort des Repositorys:
u-france-east1
- Repository-Name:
my-repo
- Projekt-ID:
my-project
- Image-Name:
my-image
- Vorhandenes Tag:
iteration6-final
- Tag zum Hinzufügen:
release-candidate
Um der Version des Images mit dem Tag iteration6-final
das Tag release-candidate
hinzuzufügen, führen Sie den folgenden Befehl aus:
gcloud artifacts docker tags add \
u-france-east1-docker.s3nsregistry.fr/my-project/my-repo/my-image:iteration6-final \
u-france-east1-docker.s3nsregistry.fr/my-project/my-repo/my-image:release-candidate
Weitere Informationen zum Format des Image-Namens finden Sie unter Repository- und Image-Namen.
Lokale Images taggen
Damit Sie ein lokales Image in Artifact Registry hochladen können, müssen Sie es zuerst mit dem Namen des Repositorys taggen. Eine Anleitung dazu finden Sie unter Push- und Pull-Modus.
Tags von Images entfernen
Repository-Modi:Standard
Sie können ein Tag aus einem Image in Artifact Registry mit derTrusted Cloud console oder der Befehlszeile entfernen.
Console
Öffnen Sie in der Trusted Cloud Console die Seite Repositories.
Klicken Sie auf das Image, um die Versionen des Images aufzurufen.
Wählen Sie die Image-Version aus, dessen Tag entfernt werden soll.
Klicken Sie in der Zeile der ausgewählten Version auf Weitere Aktionen (
) und dann auf Tags bearbeiten.
Löschen Sie das Tag und klicken Sie danach auf SPEICHERN.
gcloud
Um ein Tag zu löschen und aus dem Image zu entfernen, führen Sie folgenden Befehl aus:
gcloud artifacts docker tags delete LOCATION-docker.s3nsregistry.fr/PROJECT/REPOSITORY/IMAGE:TAG
Ersetzen Sie Folgendes:
-
LOCATION
ist der regionale Speicherort des Repositorys. PROJECT
ist Ihre Trusted Cloud by S3NS Projekt-ID.REPOSITORY
ist der Name des Repositorys, in dem das Image gespeichert ist.IMAGE
ist der Name des Images im Repository.TAG
ist das Tag für die Version, die Sie löschen möchten.
Bilder löschen
Repository-Modi:Standard
Sie können ein komplettes Container-Image oder eine bestimmte Image-Version löschen, die mit einem Tag oder Digest verknüpft ist.
- Das Löschen eines Bildes kann nicht rückgängig gemacht werden.
- Wenn Sie Bilder löschen, werden die referenzierten Ebenen nicht sofort gelöscht. Nicht referenzierte Ebenen werden täglich gelöscht.
Es sind noch weitere Tools für die Verwaltung nicht verwendeter Images verfügbar. Das Tool gcr-cleaner sucht und löscht beispielsweise alte Images anhand verschiedener Kriterien. Durch Entfernen nicht verwendeter Images können Sie die Speicherkosten reduzieren. Das gcr-cleaner
-Tool ist kein offizielles Google-Produkt.
So löschen Sie Images aus der Trusted Cloud Console oder mit der gcloud CLI:
Console
Öffnen Sie in der Trusted Cloud Console die Seite Repositories.
Klicken Sie auf den Namen des Bildes, um die Versionen des Bildes aufzurufen.
Wählen Sie die Versionen aus, die Sie löschen möchten.
Klicken Sie auf Delete.
Klicken Sie im Bestätigungsdialogfeld auf LÖSCHEN.
gcloud
Um ein Image und alle zugehörigen Tags zu löschen, führen Sie folgenden Befehl aus:
gcloud artifacts docker images delete LOCATION-docker.s3nsregistry.fr/PROJECT/REPOSITORY/IMAGE --delete-tags
Um eine bestimmte Image-Version zu löschen, verwenden Sie einen der folgenden Befehle:
gcloud artifacts docker images delete LOCATION-docker.s3nsregistry.fr/PROJECT/REPOSITORY/IMAGE:TAG [--delete-tags]
oder
gcloud artifacts docker images delete LOCATION-docker.s3nsregistry.fr/PROJECT/REPOSITORY/IMAGE@IMAGE-DIGEST [--delete-tags]
Wo
- LOCATION ist der regionale Speicherort des Repositorys.
- PROJECT ist Ihre Trusted Cloud by S3NS Projekt-ID.
- REPOSITORY ist der Name des Repositorys, in dem das Image gespeichert ist.
- IMAGE ist der Name des Images im Repository.
- TAG ist das Tag für die Version, die Sie löschen möchten. Wenn mehrere Tags mit derselben Image-Version verknüpft sind, müssen Sie
--delete-tags
angeben, damit die Image-Version ohne vorheriges Entfernen der Tags gelöscht wird. - IMAGE-DIGEST ist der sha256-Hash-Wert für die Version, die Sie löschen möchten. Wenn ein Tag mit dem Image-Digest verknüpft ist, müssen Sie
--delete-tags
angeben, damit die Image-Version ohne vorheriges Entfernen des Tags gelöscht wird. - Mit
--delete-tags
werden alle Tags entfernt, die auf die Image-Version angewendet werden. Mit diesem Flag können Sie das Löschen einer Bildversion erzwingen, wenn Folgendes gilt:- Sie haben ein Tag angegeben, aber mit der Image-Version sind weitere Tags verknüpft.
- Sie haben einen Image-Digest mit mindestens einem Tag angegeben.