Esegui la migrazione delle immagini container di App Engine in Artifact Registry

ID regione

L'REGION_ID è un codice abbreviato che Google assegna in base alla regione selezionata quando crei l'app. Il codice non corrisponde a un paese o a una provincia, anche se alcuni ID regione possono sembrare simili ai codici di paesi e province di uso comune. Per le app create dopo febbraio 2020, REGION_ID.r è incluso negli URL di App Engine. Per le app esistenti create prima di questa data, l' ID regione è facoltativo nell'URL.

Scopri di più sugli ID regione.

Container Registry è deprecato e verrà disattivato il 18 marzo 2025. Ti consigliamo di utilizzare Artifact Registry per archiviare e gestire le immagini container. Per impostazione predefinita, i nuovi deployment creati dopo il 5 marzo 2025 utilizzano Artifact Registry anziché Container Registry per archiviare le immagini delle applicazioni. Artifact Registry offre le stesse funzionalità di gestione dei container di Container Registry e include funzionalità e vantaggi aggiuntivi. In qualità di servizio completamente gestito con supporto sia per le immagini container sia per gli artefatti non container, Artifact Registry estende le funzionalità di Container Registry.

Per i progetti creati prima di maggio 2024 o che non hanno ancora eseguito lo strumento di migrazione automatica, segui i passaggi descritti in questa guida per consentire ad App Engine di eseguire automaticamente la migrazione dei flussi di deployment.

Ambiente standard di App Engine

La maggior parte dei componenti dell'applicazione nell'ambiente standard segue una procedura di migrazione automatica. Tuttavia, per una transizione senza problemi ad Artifact Registry, assicurati che il tuo account di servizio disponga delle seguenti autorizzazioni richieste:

  • Per i deployment standard esistenti, il account di servizio di deployment (il service account predefinito di App Engine (PROJECT_ID@appspot.gserviceaccount.com) o il tuo service account personalizzato) deve avere un ruolo che conceda l'autorizzazione di scrittura esplicita di Artifact Registry artifactregistry.repositories.uploadArtifacts. Per trovare i ruoli associati al tuo account di servizio di deployment, consulta Gestire l'accesso ai service account.

  • I nuovi deployment possono utilizzare Artifact Registry se uno dei seguenti ruoli è presente nel account di servizio associato ai deployment:

    Se nessuno di questi ruoli è presente, concedi il ruolo Artifact Registry Writer (roles/artifactregistry.writer) al tuo account di servizio di deployment.

Se non fornisci le autorizzazioni richieste, non potrai eseguire il deployment di nuove versioni nell'ambiente standard.

Durante le migrazioni automatiche, Google Cloud potrebbe creare nuovi repository e copiare le immagini da Container Registry ad Artifact Registry.

Ambiente flessibile di App Engine

La maggior parte dei componenti dell'applicazione nell'ambiente flessibile segue una procedura di migrazione automatica. Tuttavia, per una transizione senza problemi ad Artifact Registry, assicurati che il tuo account di servizio disponga delle seguenti autorizzazioni richieste:

  • Affinché i deployment flessibili esistenti funzionino come previsto con Artifact Registry, il account di servizio di deployment (il service account predefinito di App Engine (PROJECT_ID@appspot.gserviceaccount.com) o il tuo service account personalizzato) deve avere un ruolo che conceda le autorizzazioni esplicite di Artifact Registry, ad esempio artifactregistry.repositories.downloadArtifacts per la lettura e artifactregistry.repositories.uploadArtifacts per la scrittura. Per trovare i ruoli associati al tuo account di servizio di deployment, consulta Gestire l'accesso ai service account.

  • I nuovi deployment possono utilizzare Artifact Registry se uno dei seguenti ruoli è presente nel account di servizio associato ai deployment:

    Se nessuno di questi ruoli è presente, concedi il ruolo Artifact Registry Repository Administrator (roles/artifactregistry.repoAdmin) al tuo account di servizio di deployment.

Se non fornisci le autorizzazioni richieste, non potrai eseguire il deployment delle applicazioni nell'ambiente flessibile. Anche il ridimensionamento e il riavvio delle istanze non vanno a buon fine.

Durante le migrazioni automatiche, Google Cloud potrebbe creare nuovi repository e copiare le immagini da Container Registry ad Artifact Registry.

Eseguire la migrazione ad Artifact Registry per le immagini container create manualmente

La procedura di migrazione automatica non si applica se in precedenza hai eseguito il deployment delle app utilizzando immagini container predefinite o create manualmente da Container Registry. Ad esempio, la procedura di migrazione automatica non funziona se hai creato immagini container con Docker, le hai eseguite il push in Container Registry e hai eseguito il deployment delle app utilizzando il comando gcloud app deploy --image-url.

Se utilizzi immagini container predefinite o create manualmente da Container Registry per eseguire il deployment delle app, scegli una delle seguenti opzioni per eseguire la migrazione ad Artifact Registry:

  • Utilizza lo strumento di migrazione automatica per eseguire la migrazione da Container Registry ai repository gcr.io ospitati su Artifact Registry. Se utilizzi questo strumento, non devi eseguire nuovamente il deployment di nuove versioni del servizio. Per ulteriori informazioni, consulta Eseguire automaticamente la migrazione da Container Registry ad Artifact Registry.

  • Sposta manualmente le immagini container da Container Registry ad Artifact Registry ed esegui nuovamente il deployment di nuove versioni del servizio. Per ulteriori informazioni, consulta Migrazione manuale ai repository gcr.io in Artifact Registry.

  • Utilizza il copy-only flag per copiare le immagini container in Artifact Registry ed esegui nuovamente il deployment di nuove versioni del servizio.