Le seguenti notifiche di ritiro hanno effetto su Container Registry. Vedi anche gli avvisi di ritiro di Docker e il relativo log delle modifiche.
API Docker Registry v1 e client Docker precedenti alla versione 1.6
Il 14 dicembre 2016 abbiamo annunciato che, a partire dal 28 febbraio 2017, il rilascio della versione 1.13 di Docker Engine non supporta più il protocollo v1.
Di conseguenza, Container Registry non supporta più i client Docker precedenti alla versione 1.6. A partire dal 28 febbraio 2017, i client Docker precedenti alla versione 1.6 non possono comunicare con l'API Container Registry e qualsiasi immagine container nel protocollo v1 archiviata in Container Registry non è più pubblicabile.
Per verificare se questa modifica interessa le tue immagini, segui questi passaggi:
Controlla quale versione del client Docker stai utilizzando eseguendo questo comando:
gcloud docker -- --version
Se la tua versione client è precedente alla 1.6, devi aggiornare il client Docker. Devi quindi aggiornare le immagini al protocollo Docker v2.
Trascina un'immagine v1 interessata:
gcloud docker -- pull gcr.io/[PROJECT-ID]/[IMAGE]
Invia nuovamente l'immagine:
gcloud docker -- push gcr.io/[PROJECT-ID]/[IMAGE]
Per ulteriori informazioni sui protocolli v1 e v2 di Docker Registry, consulta Formati delle immagini container.
Bucket Container Registry non standard
Il 28 febbraio 2017 l'utilizzo dei registry "bring-your-own-bucket" come b.gcr.io
e bucket.gcr.io
è stato ritirato. Container Registry non pubblica più alcuna immagine container ospitata in tali bucket.
Per continuare a utilizzare le tue immagini, devi spostarle in una posizione
standard di Container Registry come gcr.io
, us.gcr.io
, asia.gcr.io
o
eu.gcr.io
.
Per eseguire la migrazione delle immagini container da un bucket non standard a uno standard, esegui i seguenti passaggi:
Esegui il pull delle immagini nel bucket non standard:
gcloud docker -- pull b.gcr.io/[BUCKET-NAME]/[IMAGE]:[TAG]
Tagga di nuovo le immagini con il nome di una località del Registro di sistema standard:
gcloud docker -- tag b.gcr.io/[BUCKET-NAME]/[IMAGE]:[TAG] [HOSTNAME]/[PROJECT-ID]/[IMAGE]:[TAG]
Esegui nuovamente il push dell'immagine a Container Registry (utilizzando il client Docker versione 1.6 o successiva) utilizzando l'ID progetto di destinazione:
gcloud docker -- push [HOSTNAME]/[PROJECT-ID]/[IMAGE]:[TAG]
Modifica archiviazione metadati container
A partire dal 28 febbraio 2017, Container Registry ha modificato la posizione in cui archivia i file di metadati immagine. I metadati dell'immagine si riferiscono a informazioni come nomi delle immagini, tag e manifest delle immagini che identificano i file del livello (per digest) che compongono un'immagine.
Questa modifica potrebbe avere delle conseguenze se accedi direttamente ai file di metadati nel tuo bucket Cloud Storage, ad esempio per manipolarli, ad esempio la cronologia delle modifiche o la gestione del ciclo di vita degli oggetti per l'eliminazione.
In precedenza, quando esegui il push di un'immagine in Container Registry, l'API Container Registry archiviava i metadati e i file livello di tali immagini in un bucket Cloud Storage nel progetto. A partire dal 28 febbraio 2017, Container Registry archivia i metadati delle immagini in un database di backend ad alte prestazioni per migliorare prestazioni e funzionalità. I file livello immagine vengono comunque archiviati in Cloud Storage.
Al tuo progetto è stato aggiunto automaticamente un account di servizio Container Registry con un nome simile a [PROJECT-NUMBER]@containerregistry.iam.gserviceaccount.com
.
Questo account di servizio ha attivato la nuova API Container Registry e ha gestito la migrazione. Non eliminare o eseguire il downgrade di questo account di servizio o disattivare la nuova API Container Registry.
Client gcloud docker
e Docker precedenti alla 18.03
A partire dal 3 aprile 2018, gcloud docker
non è supportato per le versioni client Docker successive alla 18.03.
Per autenticare le richieste a Container Registry per le versioni client successive alla 18.03,
utilizza gcloud
come assistente delle credenziali Docker. Per farlo, esegui il comando seguente:
gcloud auth configure-docker
In alternativa, utilizza uno degli altri metodi di autenticazione avanzati.