Artifact Registry ist ein universeller Paketverwaltungsdienst, der Container und andere Formate unterstützt. Mehr über die Umstellung von Container Registry erfahren, um mehr Flexibilität und Kontrolle über Ihre Artefakte zu erhalten

Images hoch- und herunterladen

Das Pushing (Hochladen) und Pulling (Herunterladen) von Images sind zwei der gängigsten Aufgaben in Container Registry.

Unter Images verwalten finden Sie Anweisungen zum Auflisten, Taggen und Löschen von Images.

Hinweis

Folgende Voraussetzungen müssen erfüllt sein:

  1. Für Ihr Projekt wurde Container Registry aktiviert.

  2. Sie haben Docker installiert und konfiguriert.

  3. Achten Sie darauf, dass Sie Berechtigungen zum Übertragen und Abrufen von Images haben.

Image in eine Registry hochladen

Bevor Sie ein lokales Image in Container Registry hochladen können, müssen Sie es zuerst mit dem Namen der Registry taggen.

Das erste Image, das Sie per Push an einen multiregionalen Host übertragen, erstellt den Storage-Bucket für diesen Hostnamen in Ihrem Google Cloud-Projekt.

Lokales Image mit dem Registry-Namen taggen

  1. Ermitteln Sie den Registry-Namen:

    1. Wählen Sie einen Hostnamen aus, der den Standort für das Image angibt.

      • gcr.io hostet Images in Rechenzentren in den USA, wobei sich der Standort in Zukunft ändern kann.
      • us.gcr.io hostet Images ebenfalls in Rechenzentren in den USA, jedoch in einem von gcr.io getrennten Storage-Bucket.
      • eu.gcr.io hostet Images in der Europäischen Union.
      • asia.gcr.io hostet Images in Rechenzentren in Asien.

      Diese Standorte entsprechen den Multiregionen für Storage-Buckets von Cloud Storage. Wenn Sie ein Image in eine Registry mit einem neuen Hostnamen hochladen, erstellt Container Registry einen Storage-Bucket in der angegebenen Multiregion. Dieser Bucket wird als Speicher für die Registry verwendet. Innerhalb eines Projekts teilen sich alle Registrys mit demselben Hostnamen einen Storage-Bucket.

      In der Konsole wird der Hostname der Images unter Standort aufgeführt.

    2. Wählen Sie einen Image-Namen aus. Dieser kann sich vom Image-Namen auf Ihrem lokalen Computer unterscheiden.

    3. Kombinieren Sie den Hostnamen, Ihre Projekt-ID der Google Cloud Console und den Image-Namen:

      HOSTNAME/PROJECT-ID/IMAGE
      

      Wenn die Projekt-ID einen Doppelpunkt (:) enthält, finden Sie weitere Informationen unter Auf Domains beschränkte Projekte.

  2. Taggen Sie das lokale Image mit dem Registry-Namen. Führen Sie dazu folgenden Befehl aus:

    docker tag SOURCE_IMAGE HOSTNAME/PROJECT-ID/IMAGE
    

    Dabei ist SOURCE_IMAGE der Name des lokalen Images bzw. die Image-ID.

    Dieser Befehl gibt dem Image den Registry-Namen und wendet das Tag latest an. Wenn Sie ein anderes Tag anwenden möchten, verwenden Sie folgenden Befehl:

    docker tag SOURCE_IMAGE HOSTNAME/PROJECT-ID/IMAGE:TAG
    

Getaggtes Image in Container Registry hochladen

Der Docker Credential Helper ist die einfachste Möglichkeit, Docker für die direkte Authentifizierung bei Container Registry zu konfigurieren. Anschließend verwenden Sie den docker-Befehl, um Images zu taggen und hoch- und herunterzuladen. Alternativ können Sie auch die Clientbibliotheken zur Verwaltung von Container-Images verwenden oder mit der Docker API direkt interagieren.

Laden Sie das getaggte Image mit folgendem Befehl in Container Registry hoch:

docker push HOSTNAME/PROJECT-ID/IMAGE

Mit diesem Befehl wird das Image mit dem Tag latest hochgeladen. Wenn Sie ein Image mit einem anderen Tag hochladen möchten, verwenden Sie folgenden Befehl:

docker push HOSTNAME/PROJECT-ID/IMAGE:TAG

Wenn Sie ein Image in eine Registry mit einem neuen Hostnamen hochladen, erstellt Container Registry im angegebenen multiregionalen Standort einen Storage-Bucket. Nach dem Hochladen des Images haben Sie folgende Möglichkeiten:

  • Rufen Sie die Cloud Console auf, um die Registry und das Image anzusehen.

  • Führen Sie gcloud container images list-tags aus, um die Tags des Images und den automatisch generierten Digest anzusehen:

    gcloud container images list-tags HOSTNAME/PROJECT-ID/IMAGE
    

    Die Befehlsausgabe sieht in etwa so aus:

    DIGEST        TAGS        TIMESTAMP
    44bde...      test        2017-..-..
    

Images aus einer Registry herunterladen

Verwenden Sie folgenden Befehl, um Images aus Container Registry herunterzuladen:

docker pull HOSTNAME/PROJECT-ID/IMAGE:TAG

oder

docker pull HOSTNAME/PROJECT-ID/IMAGE@IMAGE_DIGEST

Dabei gilt:

  • HOSTNAME ist in der Konsole unter Standort aufgeführt. Dies kann gcr.io, us.gcr.io, eu.gcr.io oder asia.gcr.io sein.
  • HOSTNAME ist Ihre Projekt-ID der Google Cloud Console. Wenn die Projekt-ID einen Doppelpunkt (:) enthält, finden Sie weitere Informationen unter Auf Domains beschränkte Projekte.
  • IMAGE ist der Image-Name in Container Registry.
  • TAG ist das auf das Image angewendete Tag. In einer Registry gilt jedes Tag für jeweils ein Image.
  • IMAGE_DIGEST ist der sha256-Hash-Wert des Image-Inhalts. Klicken Sie in der Cloud Console auf das jeweilige Image, um dessen Metadaten aufzurufen. Der Digest wird unter Image-Digest aufgeführt.

So rufen Sie den Pull-Befehl für ein bestimmtes Image ab:

  1. Klicken Sie auf den Namen eines Images, um zur jeweiligen Registry zu gelangen.

  2. Klicken Sie in der Registry auf das Kästchen neben der Version des Images, die Sie herunterladen möchten.

  3. Klicken Sie oben auf der Seite auf PULL-BEFEHL ANZEIGEN.

  4. Kopieren Sie den Pull-Befehl. Er identifiziert das Image entweder mit dem Tag oder dem Digest.

Weitere Informationen