Von Container Registry wechseln

Artifact Registry ist der empfohlene Dienst für die Speicherung und Verwaltung von Container-Images in Google Cloud. Als vollständig verwalteter Dienst mit Unterstützung für Container-Images und Artefakte ohne Container erweitert Artifact Registry die Funktionen von Container Registry.

Wenn Sie derzeit Container Registry verwenden, nutzen Sie die Informationen auf dieser Seite, um mehr über die Umstellung auf Artifact Registry zu erfahren. Container Registry ist weiterhin als Google Enterprise API verfügbar und wird auch nur dort unterstützt. Neue Funktionen sind jedoch nur in Artifact Registry verfügbar. Container Registry erhält nur wichtige Sicherheitsupdates.

Übersicht

Artifact Registry bietet dieselben Funktionen zur Containerverwaltung wie Container Registry sowie zusätzliche Features und Vorteile:

Weitere Formate
Neben Container-Images können Sie die folgenden Formate speichern und verwalten:
  • Helm-Diagramme
  • Java-, Node.js- und Python-Pakete
  • Debian- und RPM-Linux-Pakete
Regionale Repositorys
Container Registry bietet nur multiregionale Registry-Hosts. Artifact Registry bietet sowohl regionale als auch multiregionale Registry-Hosts.
Mehrere separate Repositories an einem Standort
In Container Registry können Sie nur einen Registry-Host in einer Multi-Region erstellen und alle Repositories in der Registry haben denselben Storage-Bucket. In Artifact Registry ist jedes Repository eine separate Ressource. Sie können verschiedene Labels und Richtlinien für die Identitäts- und Zugriffsverwaltung auf jedes Repository anwenden.
Berechtigungen auf Repository-Ebene
In Container Registry gewähren Sie Berechtigungen für jeden multiregionalen Registry-Host. Sie können keine separaten Berechtigungen auf Repository-Ebene anwenden. Artifact Registry bietet Zugriffssteuerung auf Repository-Ebene.
Artifact Registry-IAM-Rollen
In Container Registry verwenden Sie Cloud Storage-Rollen, um den Zugriff zu steuern und ein Image an einen Registry-Host zu übertragen, bevor Sie Berechtigungen für den Host konfigurieren können. In Artifact Registry verwenden Sie Artifact Registry-Rollen, um Zugriff zu gewähren, und es gibt eine klare Trennung zwischen Rollen von Repository-Administratoren und Repository-Nutzern.

Abwärtskompatibilität und Koexistenz

Sie können Artifact Registry und Container Registry im selben Projekt verwenden. Wenn Sie eine Liste von Repositories mit gcloud oder der Cloud Console aufrufen, listet Artifact Registry auch Container Registry-Repositories im selben Projekt auf.

Sie können Ihre Container und Ihre Automatisierung auf Artifact Registry umstellen, um die erweiterten Funktionen von Artifact Registry zu nutzen.

Übergangsoptionen

Sie haben folgende Möglichkeiten, zu Artifact Registry zu wechseln:

Standard-Repositories (empfohlen)
Reguläre Artifact Registry-Repositories, die alle Features unterstützen und unabhängig von vorhandenen Container Registry-Hosts sind.
Repositories mit Unterstützung für gcr.io-Domains (Alpha)

Spezielle Repositories, die Container Registry-gcr.io-Hostnamen zugeordnet sind. Diese Repositories unterstützen:

  • gcloud container images-Befehle
  • Traffic von gcr.io Hostnamen an die entsprechenden gcr.io-Repositories in Ihrem Projekt weiterleiten

Für diese Repositories gelten einige Funktionseinschränkungen. Wenn Sie jedoch viele Tools, Skripts oder Code mit gcr.io-Referenzen verwenden, ist möglicherweise ein taktischerer Ansatz für die Umstellung auf Artifact Registry erforderlich.

Beide Arten von Repositories können nebeneinander bestehen, sodass Sie schrittweise umstellen können. Beispiel:

  • Sie können gcr.io-Repositories in Artifact Registry erstellen, um Ihre vorhandene Container Registry-Einrichtung zu übertragen und Standard-Repositories für neue Arbeit zu erstellen.
  • Sie können einen mehrstufigen Ansatz wählen. Wechseln Sie zu gcr.io-Repositories in Artifact Registry und wechseln Sie dann schrittweise zu Standard-Repositories, wenn Sie Ihre Automatisierung aktualisieren, um Artifact Registry-Repositories und -Image-Pfade vollständig zu unterstützen.

Repositories einrichten

In Artifact Registry müssen Sie Repositories erstellen, bevor Sie Images per Push übertragen können. Ein wichtiger Teil der Umstellung auf Artifact Registry ist das Einrichten von Artifact Registry-Repositories und die Integration in Ihre CI/CD-Automatisierung.

Um die Flexibilität zu erhöhen, gibt es einige Änderungen in der Darstellung von Repositories von Artifact Registry.

Container Registry

Jeder multiregionale Standort ist einem einzelnen Storage-Bucket zugeordnet. Das Organisieren Ihrer Images in Repositories unter einem Hostnamen ist optional. Im folgenden Beispiel wird das Image webapp an drei Speicherorten angezeigt:

us.gcr.io/my-project/webapp
us.gcr.io/my-project/team1/webapp
us.gcr.io/my-project/team2/webapp

Repositories dienen nur zur Organisation und schränken den Zugriff nicht ein. Jeder Nutzer mit Zugriff auf den Storage-Bucket für us.gcr.io in diesem Projekt kann auf alle Versionen des Container-Images webapp zugreifen.

Artifact Registry

Jedes Repository ist eine separate Ressource in Ihrem Projekt. Da jedes Repository eine eindeutige Ressource ist, haben Sie folgende Möglichkeiten:

  • Jedem Repository einen Namen, eine Beschreibung und Labels zuweisen
  • Mehrere Repositories am selben Speicherort erstellen
  • Repository-spezifische Berechtigungen konfigurieren

Außerdem kann der Speicherort eines Repositorys eine Region oder mehrere Regionen sein.

Mit diesen Änderungen haben Sie mehr Kontrolle über Ihre Repositories. Wenn Sie beispielsweise Teams in São Paulo und Sydney haben, können Sie für jedes Team in einer Region, die geografisch näher am nächsten multiregionalen Standort liegt, ein Repository erstellen.

southamerica-east1-docker.pkg.dev/my-project/team1/webapp
australia-southeast1-docker.pkg.dev/my-project/team2/webapp

Sie können dann jedem Team nur die Berechtigungen für das Team-Repository erteilen.

Eine Anleitung zum Wechsel zu Artifact Registry finden Sie im Einrichtungsleitfaden.

Images hoch- und herunterladen

Die folgenden Informationen vergleichen Sie beim Erstellen, Übertragen, Abrufen und Bereitstellen von Images, um vorhandene Konfigurationen, Befehle und Dokumentationen für Container Registry anzupassen.

Funktionsvergleich

In diesem Abschnitt werden Änderungen und Verbesserungen der Container Registry-Features zusammengefasst.

Feature Container Registry Artifact Registry
Unterstützte Formate Nur Container-Images Mehrere Artefaktformate, einschließlich Container-Images, Sprachpakete und Betriebssystempakete
Repositories
  • Erstellung: Erstellt automatisch ein Repository an einem multiregionalen Standort, wenn Sie vorher noch kein Image hochgeladen haben.
  • Standort: Nur multiregionale Repositories.
  • Organisation: Alle Repositories auf demselben multiregionalen Host in einem Google Cloud-Projekt teilen einen einzelnen Storage-Bucket.
  • Zugriffssteuerung: Sie können Berechtigungen auf Projektebene oder im Storage-Bucket für jeden multiregionalen Host erteilen.
  • Erstellung: Sie müssen ein Repository erstellen, bevor Sie Images per Push übertragen.
  • Speicherort: Erstellen Sie Standard-Repositories in einer Multiregion oder Region. Der nächstgelegene multiregionale Standort für Australien ist beispielsweise Asien. Mit der regionalen Unterstützung können Sie ein Repository im Rechenzentrum von Sydney erstellen.
  • Organisation: Sie können mehrere, separate Repositories in jeder Region oder Mehrfachregion erstellen. Sie können Labels anwenden, um sie nach Team, Entwicklungsphase oder anderen Kategorien zu gruppieren.
  • Zugriffssteuerung: Sie können Berechtigungen für das Projekt oder für einzelne Repositories erteilen.
Hostnamen Hosts befinden sich in der Domain gcr.io. Hosts befinden sich in der Domain pkg.dev. Weitere Informationen zum Namensformat finden Sie unter Repository- und Artefaktnamen.

Sie können den Domainsupport von gcr.io verwenden, um Traffic von Ihren gcr.io>-Hosts automatisch an die entsprechenden Artifact Registry-Repositories im selben Projekt weiterzuleiten.

Berechtigungen
  • Gewähren Sie Zugriff mit Cloud Storage-Berechtigungen.
  • Sie können den Zugriff auf alle Images beschränken, die in mehreren Regionen gespeichert sind, aber nicht auf einzelne Repositories. Sie können beispielsweise den Zugriff auf us.gcr.io im Projekt my-project einschränken, aber keine Berechtigungen für Images unter us.gcr.io/my-project/team1 und us.gcr.io/my-project/team2 gewähren.
Authentifizierung Verschiedene Authentifizierungsmethoden zum Übertragen und Abrufen von Images mit einem Drittanbieterclient. Artifact Registry unterstützt dieselben Authentifizierungsmethoden wie Container Registry. Weitere Informationen finden Sie unter Authentifizierung für Docker einrichten.

Wenn Sie Docker Credential Helper verwenden:

  • Version 2.0.0 oder höher ist erforderlich.
  • Docker-Client-Versionen vor Version 18.03 werden nicht mehr unterstützt.
  • Sie müssen die Artifact Registry-Standorte hinzufügen, die Sie in der Konfiguration von Credential Helper verwenden werden.
Vom Kunden verwaltete Verschlüsselungsschlüssel (CMEK) Verschlüsseln Sie Ihre der Storage-Buckets, die Ihre Images enthalten, mit CMEK. Verschlüsseln Sie einzelne Repositories mit CMEK.
Google Cloud Console verwenden Im Bereich Container Registry der Cloud Console können Sie die Container Registry-Images aufrufen und verwalten. Im Abschnitt Artifact Registry der Cloud Console können Sie eine Liste der Artifact Registry- und Container Registry-Repositories aufrufen. Sie können die Artifact Registry-Repositories und -Images von dieser Seite aus verwalten.

Wenn Sie auf ein Container Registry-Repository klicken, werden Sie zur Liste der Images im Abschnitt Container Registry der Cloud Console weitergeleitet.

gcloud- und API-Befehle verwenden Verwendet gcloud container images-Befehle. Befehle unterstützen gekürzte Benachrichtigungen. Wenn Sie den vollständigen Digest-String nicht angeben, versucht Container Registry, das richtige Image anhand des Teilstrings zu finden. Verwendet gcloudartifact docker-Befehle. Gekürzte Benachrichtigungen werden von Befehlen nicht unterstützt.

Einen Vergleich der gcloud-Befehle von Container Registry und Artifact Registry finden Sie unter gcloud command comparison.

Artifact Registry enthält auch eine API zum Verwalten von Repositories und Artefakten in allen Formaten.

Pub/Sub-Benachrichtigungen Änderungen am Thema gcr veröffentlichen. Änderungen am Thema gcr veröffentlichen. Wenn Sie Repositories im selben Projekt wie Ihren vorhandenen Container Registry-Dienst erstellen, funktioniert Ihre vorhandene Pub/Sub-Konfiguration automatisch.

Weitere Informationen finden Sie unter Pub/Sub-Benachrichtigungen konfigurieren.

Im Cache gespeicherte Docker Hub-Images Speichert die am häufigsten angeforderten Docker Hub-Images auf mirror.gcr.io im Cache. mirror.gcr.io speichert weiterhin häufig angeforderte Images vom Docker Hub im Cache.
VPC Service Controls Sie können einem Dienstperimeter Container Registry hinzufügen. Sie können einem Dienstperimeter eine Artifact Registry hinzufügen.
Metadaten speichern und analysieren Container Analysis bietet Metadatenspeicher, das Scannen auf Sicherheitslücken und die Integration in Dienste, die Metadaten wie Binärautorisierung verwenden. Cloud SDK-Befehle zum Arbeiten mit Hinweisen und Vorkommen befinden sich in der Gruppe gcloud container images. Container Analysis unterstützt das Speichern von Metadaten und das Scannen auf Sicherheitslücken für Container-Images sowohl in Artifact Registry und Container Registry.
  • Beide Produkte verwenden dieselben Container Analysis APIs. Wenn Sie Container Analysis APIs in Container Registry oder Artifact Registry aktivieren, sind die APIs für beide Produkte aktiviert.
  • Beide Produkte verwenden dieselben Pub/Sub-Themen für Container Analysis-Benachrichtigungen. Ihre vorhandenen Abos enthalten Benachrichtigungen sowohl für Artifact Registry als auch für Container Registry.
  • Cloud SDK-Befehle zum Arbeiten mit Hinweisen und Vorkommen befinden sich in der Gruppe gcloud artifacts docker.
Von Google bereitgestellte Images Von Google bereitgestellte Images werden auf gcr.io gehostet. Hier einige Beispiele: Von Google bereitgestellte Images sind weiterhin auf gcr.io verfügbar.
Preise Die Container Registry-Preise basieren auf der Nutzung von Cloud Storage, einschließlich Speicher und ausgehendem Netzwerktraffic. Artifact Registry hat eigene Preise basierend auf Speicher und ausgehenden Netzwerktraffic.