App Engine-Container-Images zu Artifact Registry migrieren

Regions-ID

REGION_ID ist ein abgekürzter Code, den Google anhand der Region zuweist, die Sie beim Erstellen Ihrer Anwendung ausgewählt haben. Der Code bezieht sich nicht auf ein Land oder eine Provinz, auch wenn einige Regions-IDs häufig verwendeten Länder- und Provinzcodes ähneln können. Bei Anwendungen, die nach Februar 2020 erstellt wurden, ist REGION_ID.r in den App Engine-URLs enthalten. Bei Anwendungen, die vor diesem Datum erstellt wurden, ist die Regions-ID in der URL optional.

Hier finden Sie weitere Informationen zu Regions-IDs.

Container Registry wird nicht mehr unterstützt und wurde am 18. März 2025 eingestellt. Wir empfehlen, Artifact Registry zum Speichern und Verwalten von Container-Images zu verwenden. Neue Bereitstellungen, die nach dem 5. März 2025 erstellt werden, verwenden standardmäßig Artifact Registry anstelle von Container Registry zum Speichern von Anwendungs-Images. Artifact Registry bietet die gleichen Funktionen zur Containerverwaltung wie Container Registry und umfasst zusätzliche Funktionen und Vorteile. Als vollständig verwalteter Dienst mit Unterstützung sowohl für Container-Images als auch für Nicht-Container-Artefakte erweitert Artifact Registry die Möglichkeiten von Container Registry.

Für Projekte, die vor Mai 2024 erstellt wurden oder für die die automatische Migrationstools noch nicht ausgeführt wurden, folgen Sie der Anleitung in diesem Leitfaden, um die automatische Migration Ihrer Bereitstellungsabläufe durch die App Engine zu aktivieren.

App Engine-Standardumgebung

Die meisten Anwendungskomponenten in der Standardumgebung werden automatisch migriert. Für eine reibungslose Umstellung auf Artifact Registry muss Ihr Dienstkonto jedoch die folgenden erforderlichen Berechtigungen haben:

  • Bei vorhandenen Standardbereitstellungen muss das Bereitstellen-Dienstkonto (entweder das App Engine-Standarddienstkonto (PROJECT_ID@appspot.gserviceaccount.com) oder Ihr benutzerdefiniertes Dienstkonto) eine Rolle haben, die die explizite Schreibberechtigung artifactregistry.repositories.uploadArtifacts für die Artifact Registry gewährt. Informationen zu den Rollen, die mit dem Dienstkonto für die Bereitstellung verknüpft sind, finden Sie unter Zugriff auf Dienstkonten verwalten.

  • Neue Bereitstellungen können die Artifact Registry verwenden, wenn eine der folgenden Rollen im Dienstkonto vorhanden ist, das mit den Bereitstellungen verknüpft ist:

    Wenn keine dieser Rollen vorhanden ist, weisen Sie dem Dienstkonto, das die Bereitstellung durchführt, die Rolle „Artifact Registry Writer“ (roles/artifactregistry.writer) zu.

Wenn Sie die erforderlichen Berechtigungen nicht angeben, können Sie keine neuen Versionen in der Standardumgebung bereitstellen.

Während der automatisierten Migrationen erstellt Google Cloud möglicherweise neue Repositories und kopiert Images aus der Container Registry in die Artifact Registry.

Flexible App Engine-Umgebung

Die meisten Anwendungskomponenten in der flexiblen Umgebung werden automatisch migriert. Für eine reibungslose Umstellung auf Artifact Registry muss Ihr Dienstkonto jedoch die folgenden erforderlichen Berechtigungen haben:

  • Damit vorhandene flexible Bereitstellungen mit Artifact Registry wie erwartet funktionieren, muss das Bereitstellen des Dienstkontos (entweder das App Engine-Standarddienstkonto (PROJECT_ID@appspot.gserviceaccount.com) oder Ihr benutzerdefiniertes Dienstkonto) eine Rolle haben, die die expliziten Artifact Registry-Berechtigungen wie artifactregistry.repositories.downloadArtifacts für das Lesen und artifactregistry.repositories.uploadArtifacts für das Schreiben gewährt. Informationen zu den Rollen, die mit dem Dienstkonto für die Bereitstellung verknüpft sind, finden Sie unter Zugriff auf Dienstkonten verwalten.

  • Neue Bereitstellungen können Artifact Registry verwenden, wenn eine der folgenden Rollen im Dienstkonto vorhanden ist, das mit den Bereitstellungen verknüpft ist:

    Wenn keine dieser Rollen vorhanden ist, weisen Sie dem Dienstkonto, das die Bereitstellung durchführt, die Rolle „Artifact Registry Repository Administrator“ (roles/artifactregistry.repoAdmin) zu.

Wenn Sie die erforderlichen Berechtigungen nicht angeben, können Sie keine Anwendungen in der flexiblen Umgebung bereitstellen. Auch die Skalierung und der Neustart von Instanzen schlagen fehl.

Während der automatisierten Migrationen erstellt Google Cloud möglicherweise neue Repositories und kopiert Images aus der Container Registry in die Artifact Registry.

Manuell erstellte Container-Images zu Artifact Registry migrieren

Der automatisierte Migrationsprozess gilt nicht, wenn Sie Ihre Apps zuvor mit vordefinierten oder manuell erstellten Container-Images aus der Container Registry bereitgestellt haben. Der automatisierte Migrationsprozess funktioniert beispielsweise nicht, wenn Sie Container-Images mit Docker erstellt, diese Images in die Container Registry hochgeladen und Ihre Apps mit dem Befehl gcloud app deploy --image-url bereitgestellt haben.

Wenn Sie vorkonfigurierte oder manuell erstellte Container-Images aus Container Registry zum Bereitstellen Ihrer Apps verwenden, haben Sie folgende Möglichkeiten, zu Artifact Registry zu migrieren:

  • Mit dem Tool für die automatische Migration von Container Registry zu gcr.io-Repositories migrieren, die in Artifact Registry gehostet werden Wenn Sie dieses Tool verwenden, müssen Sie neue Versionen Ihres Dienstes nicht neu bereitstellen. Weitere Informationen finden Sie unter Automatische Migration von Container Registry zu Artifact Registry.

  • Verschieben Sie die Container-Images manuell von Container Registry zu Artifact Registry und stellen Sie neue Versionen Ihres Dienstes neu bereit. Weitere Informationen finden Sie unter Manuelle Migration zu gcr.io-Repositories in Artifact Registry.

  • Verwenden Sie das Flag copy-only, um Ihre Container-Images in Artifact Registry zu kopieren und neue Versionen Ihres Dienstes neu bereitzustellen.