Los siguientes avisos de baja afectan a Container Registry. Consulta también Avisos de baja de Docker y su changelog.
API de Docker Registry v1 y clientes de Docker anteriores a la versión 1.6
El 14 de diciembre de 2016, anunciamos que, a partir del 28 de febrero de 2017, con el lanzamiento de Docker v1.13, Docker Engine ya no es compatible con el protocolo v1.
Como resultado, Container Registry ya no admite clientes de Docker con versiones anteriores a la 1.6. Después del 28 de febrero de 2017, los clientes de Docker con versiones anteriores a la 1.6 no pueden comunicarse con la API de Container Registry, y las imágenes de contenedor del protocolo v1 almacenadas en Container Registry ya no se pueden entregar.
Para ver si este cambio afecta tus imágenes, sigue estos pasos:
Ejecuta el siguiente comando para revisar la versión de cliente de Docker que estás usando:
gcloud docker -- --version
Si la versión de tu cliente es anterior a la versión 1.6, debes actualizar tu cliente de Docker. Luego, debes actualizar tus imágenes al protocolo de Docker Registry v2.
Extrae una imagen de v1 afectada:
gcloud docker -- pull gcr.io/[PROJECT-ID]/[IMAGE]
Vuelve a enviar la imagen:
gcloud docker -- push gcr.io/[PROJECT-ID]/[IMAGE]
Para obtener más información acerca de los protocolos v1 y v2 de Docker Registry, consulta Formatos de imágenes de contenedor.
Depósitos no estándar de Container Registry
El 28 de febrero de 2017, dejará de estar disponible el uso de registros del tipo "traiga su propio depósito", como b.gcr.io
y bucket.gcr.io
. Container Registry ya no entrega imágenes de contenedores alojadas en esos depósitos.
Para seguir usando tus imágenes, debes moverlas a una ubicación estándar de Container Registry, como gcr.io
, us.gcr.io
, asia.gcr.io
o eu.gcr.io
.
A fin de migrar las imágenes de contenedor de un bucket no estándar a uno estándar, sigue estos pasos:
Extrae las imágenes del bucket no estándar:
gcloud docker -- pull b.gcr.io/[BUCKET-NAME]/[IMAGE]:[TAG]
Vuelve a etiquetar las imágenes con un nombre de ubicación de registro estándar:
gcloud docker -- tag b.gcr.io/[BUCKET-NAME]/[IMAGE]:[TAG] [HOSTNAME]/[PROJECT-ID]/[IMAGE]:[TAG]
Vuelve a enviar la imagen a Container Registry (con la versión 1.6 o posterior del cliente de Docker) mediante el ID del proyecto de destino:
gcloud docker -- push [HOSTNAME]/[PROJECT-ID]/[IMAGE]:[TAG]
Cambio del almacenamiento de metadatos de imágenes de contenedor
A partir del 28 de febrero de 2017, Container Registry cambió la ubicación en la que almacena los archivos de metadatos de imágenes de contenedor. Los metadatos de imágenes se refieren a información como nombres de imágenes, etiquetas de imágenes y manifiestos de imágenes que identifican los archivos de capas (por resumen) que conforman una imagen.
Este cambio puede afectarte si accedes o manipulas directamente los archivos de metadatos de tu bucket de Cloud Storage, como el historial de cambios o la administración del ciclo de vida de los objetos para su eliminación.
Anteriormente, cuando enviabas una imagen a Container Registry, la API de Container Registry almacenaba los metadatos y los archivos de capas para esas imágenes en un bucket de Cloud Storage en tu proyecto. A partir del 28 de febrero de 2017, Container Registry almacena los metadatos de imágenes en una base de datos de backend de alto rendimiento para mejorar el rendimiento y la funcionalidad. Los archivos de la capa de imagen aún se almacenan en Cloud Storage.
Una cuenta de servicio de Container Registry se agregó automáticamente a tu proyecto con un nombre similar a [PROJECT-NUMBER]@containerregistry.iam.gserviceaccount.com
.
Esta cuenta de servicio activó la nueva API de Container Registry y administró la migración. No borres ni cambies a una versión inferior esta cuenta de servicio ni desactives la nueva API de Container Registry.
Comando de Docker de gcloud y clientes de Docker anteriores a la versión 18.03
A partir del 3 de abril de 2018, gcloud docker
no es compatible con las versiones cliente de Docker anteriores a la versión 18.03.
A fin de autenticar solicitudes a Container Registry para versiones cliente anteriores a la 18.03, usa gcloud
como un auxiliar de credenciales de Docker. Para ello, ejecuta el siguiente comando:
gcloud auth configure-docker
También puedes usar uno de los otros métodos de autenticación avanzada.