Artifact Registry ist der empfohlene Dienst für die Speicherung und Verwaltung von Container-Images in Google Cloud. Als vollständig verwalteter Dienst, der sowohl Container-Images als auch Artefakte ohne Container unterstützt, erweitert Artifact Registry die Möglichkeiten 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. Obwohl Container Registry weiterhin als Google Enterprise API verfügbar ist und unterstützt wird, sind neue Funktionen nur in Artifact Registry verfügbar. Container Registry erhält nur kritische Sicherheitsupdates.
Übersicht
Artifact Registry bietet dieselben Features zur Containerverwaltung wie Container Registry, hat aber auch zusätzliche Features und Vorteile:
- Zusätzliche Artefaktformate
Sie können Repositories für die folgenden Artefaktformate erstellen:
- Regionale Repositorys
Container Registry bietet nur multiregionale Hosts für die Registrierung. Artifact Registry bietet sowohl regionale als auch multiregionale Registrierungshosts.
- Mehrere separate Repositories an einem Ort
In Container Registry können Sie nur einen Registry-Host an einem multiregionalen Standort erstellen und alle Repositories in der Registry teilen sich denselben Storage-Bucket. In Artifact Registry ist jedes Repository eine separate Ressource. Sie können für jedes Repository andere Labels und Richtlinien für die Identitäts- und Zugriffsverwaltung verwenden.
- Berechtigungen auf Repository-Ebene
In Container Registry erteilen Sie Berechtigungen für jeden multiregionalen Registry-Host. Sie können keine separaten Berechtigungen auf Repository-Ebene anwenden. Artifact Registry bietet Zugriff auf Repository-Ebene.
- Artifact Registry-IAM-Rollen
In Container Registry verwenden Sie Cloud Storage-Rollen, um den Zugriff zu steuern. Außerdem müssen Sie ein Image an einen Registry-Host senden, bevor Sie Berechtigungen für den Host konfigurieren können. In Artifact Registry verwenden Sie Artifact Registry-Rollen, um Zugriff zu gewähren. Es gibt eine klare Trennung zwischen den Rollen „Repository-Administrator“ und „Repository-Nutzer“.
- Google Kubernetes Engine-Image-Streaming
GKE kann Daten aus zulässigen Images wie von Ihren Anwendungen angefordert streamen, sodass Arbeitslasten initialisiert werden können, ohne auf den Download des gesamten Images warten zu müssen. Image-Streaming ermöglicht schnelleres Autoscaling, einen schnelleren Pod-Start und eine reduzierte Latenz beim Abrufen großer Images.
- Quellbereitstellung von Cloud Run
Mit einem einzigen Google Cloud CLI-Befehl können Sie neue Dienste und neue Überarbeitungen direkt aus Quellcode in Cloud Run bereitstellen. Bei der Quellbereitstellung wird ein Container-Image aus Ihrem Code erstellt, in Artifact Registry gespeichert und in Cloud Run bereitgestellt.
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 Google Cloud Console ansehen, 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.
Umstellungsoptionen
Sie haben folgende Möglichkeiten, zu Artifact Registry zu wechseln:
- Standard-Repositories (empfohlen)
- Reguläre Artifact Registry-Repositories, die alle Features unterstützen und vollständig von vorhandenen Container Registry-Hosts unabhängig sind.
- Repositories mit Unterstützung der gcr.io-Domain
Spezielle Repositories, die
gcr.io
-Hostnamen in Container Registry zugeordnet sind. Diese Repositories unterstützen die Weiterleitung von Traffic vongcr.io
-Hostnamen zu den entsprechenden gcr.io-Repositories in Ihrem Projekt.Für diese Repositories gelten einige Funktionseinschränkungen. Wenn Sie jedoch viele Tools, Skripts oder Code mit
gcr.io
-Referenzen haben, ist für die Umstellung auf Artifact Registry möglicherweise ein taktischerer Ansatz erforderlich.
Beide Arten von Repositories können gleichzeitig vorhanden sein, damit Sie schrittweise wechseln können. Beispiel:
- Sie können gcr.io-Repositories in Artifact Registry erstellen, um die vorhandene Container Registry-Einrichtung zu übertragen und Standard-Repositories für neue Aufgaben zu erstellen.
- Bei der Umstellung können Sie einen mehrstufigen Ansatz wählen. Wechseln Sie zu gcr.io-Repositories in Artifact Registry und stellen Sie dann nach und nach auf Standard-Repositories um, während Sie Ihre Automatisierung aktualisieren, um Artifact Registry-Repository- 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-Imageswebapp
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
Mit den folgenden Informationen können Sie vorhandene Konfigurationen, Befehle und Dokumentationen für Container Registry anpassen und Images erstellen, per Push übertragen, abrufen und bereitstellen.
- Änderungen beim Erstellen und Bereitstellen in Google Cloud
- Änderungen beim Hoch- und Herunterladen mit Docker
Funktionsvergleich
In diesem Abschnitt werden Änderungen und Verbesserungen der Container Registry-Features zusammengefasst.
Funktion | Container Registry | Artifact Registry |
---|---|---|
Unterstützte Formate | Nur Container-Images | Mehrere Artefakt-Formate, einschließlich Container-Images, Sprachpakete und Betriebssystempakete |
Repositories |
|
|
Hostnamen | Hosts sind in der Domain gcr.io . |
Hosts sind in der Domain pkg.dev . Weitere Informationen zum Namensformat finden Sie unter Repository- und Artefaktnamen.
Mit der Unterstützung von gcr.io-Domains können Sie Traffic von Ihren |
Berechtigungen |
|
|
Authentifizierung | Bietet mehrere Authentifizierungsmethoden zum Übertragen und Abrufen von Images mit dem Client eines Drittanbieters | 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:
|
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. |
Über die Google Cloud Console | Container Registry-Images im Bereich Container Registry der Google Cloud Console ansehen und verwalten | Eine Liste Ihrer Artifact Registry- und Container Registry-Repositories finden Sie in der Google Cloud Console im Abschnitt Artifact Registry. 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 Google Cloud Console weitergeleitet. |
gcloud- und API-Befehle verwenden | Verwendet gcloud container images-Befehle. Befehle unterstützen verkürzte Digests. Wenn Sie den vollständigen Digest-String nicht angeben, versucht Container Registry anhand des unvollständigen Strings, das richtige Image zu finden. | Verwendet die Befehle gcloudArtefakte-Docker. Gekürzte Digests 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. |
Metadatenspeicher und -analyse mit Container Analysis | Scans auf Sicherheitslücken des Betriebssystems und der Sprachpakete mit On-Demand-Scans in Images mit einem unterstützten Betriebssystem. Beim automatischen Scan werden nur Informationen zu Sicherheitslücken des Betriebssystems zurückgegeben.
Weitere Informationen zu Scantypen
|
Scans auf Sicherheitslücken des Betriebssystems und der Sprachpakete mit On-Demand- und automatischen Scans.
Weitere Informationen zu Scantypen
|
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. |
Image-Streaming | Nicht verfügbar | GKE kann Daten aus zulässigen Images in Artifact Registry streamen. Dies ermöglicht ein schnelleres Autoscaling, einen schnelleren Pod-Start und eine reduzierte Latenz beim Abrufen großer Images. |
Cloud Run-Quellbereitstellung | Nicht verfügbar | Bei der Quellbereitstellung können Sie mit einem einzigen gcloud-Befehl ein Container-Image aus Ihrem Quellcode erstellen, das Image in Artifact Registry speichern und in Cloud Run bereitstellen. |
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. |