Realiza la transición desde Container Registry

Artifact Registry es la evolución de Container Registry. Como servicio completamente administrado y compatible con imágenes de contenedores y artefactos que no son de contenedores, Artifact Registry extiende las capacidades de Container Registry.

Si en este momento usas Container Registry, usa la información de esta página para aprender sobre la transición a Artifact Registry.

Descripción general

Artifact Registry proporciona las mismas funciones de administración de contenedores que Container Registry. Puedes comenzar la transición de la automatización a fin de usar Artifact Registry para tus contenedores.

Retrocompatibilidad y coexistencia

Puedes usar Artifact Registry y Container Registry en el mismo proyecto. Cuando ves una lista de repositorios con gcloud o Cloud Console, Artifact Registry también enumera los repositorios de Container Registry en el mismo proyecto.

Para aprovechar las capacidades expandidas de Artifact Registry, puedes transferir los contenedores y la automatización a Artifact Registry.

Opciones de transición

Puedes hacer la transición a Artifact Registry con una de estas opciones:

Repositorios estándar (recomendado)
Repositorios de Artifact Registry compatibles con todas las funciones y son completamente independientes de cualquier host de Container Registry existente.
Repositorios con compatibilidad con dominios gcr.io (Alfa)

Repositorios especiales que se asignan a los nombres de host gcr.io de Container Registry Estos repositorios son compatibles con lo siguiente:

  • Comandos gcloud container images
  • Redireccionamiento del tráfico de los nombres de host gcr.io a los repositorios gcr.io correspondientes de tu proyecto.

Estos repositorios tienen algunas limitaciones de funciones. Sin embargo, si tienes mucha configuración, secuencias de comandos o código de herramientas de referencia con referencias gcr.io, podría ser necesario un enfoque más conceptual para la transición a Artifact Registry.

Ambos tipos de repositorios pueden coexistir para que puedas realizar la transición gradual. Por ejemplo:

  • Puedes crear repositorios gcr.io en Artifact Registry para transferir tu configuración existente de Container Registry y crear repositorios estándar para trabajos nuevos.
  • Puedes adoptar un enfoque de varias etapas en la transición. Pasa a los repositorios gcr.io en Artifact Registry y, luego, cambia gradualmente al uso de los repositorios estándar mientras actualizas tu automatización para que sea totalmente compatible con el repositorio de Artifact Registry y las rutas de acceso a imágenes.

Configura los repositorios

En Artifact Registry, debes crear repositorios para poder enviar imágenes a ellos. Una parte clave de pasar a Artifact Registry es configurar los repositorios de Artifact Registry y, además, integrarlos en tu automatización de IC/EC.

A fin de proporcionar mayor flexibilidad, se realizaron algunos cambios en la forma en que Artifact Registry representa los repositorios.

Container Registry

Cada ubicación multirregional está asociada a un solo depósito de almacenamiento. Organiza tus imágenes en repositorios debajo de un nombre de host es opcional. Considera el ejemplo siguiente que muestra la imagen webapp en tres ubicaciones:

us.gcr.io/my-project/webapp
us.gcr.io/my-project/team1/webapp
us.gcr.io/my-project/team2/webapp

Los repositorios son solo un mecanismo de organización y no restringen el acceso. Cualquier usuario con acceso al depósito de almacenamiento para us.gcr.io en este proyecto puede acceder a todas las versiones de la imagen de contenedor webapp.

Artifact Registry

Cada repositorio es un recurso diferente en tu proyecto. Como cada repositorio es un recurso único, puedes hacer lo siguiente:

  • Otorgarle un nombre, una descripción y etiquetas a cada repositorio
  • Crear varios repositorios en la misma ubicación
  • Configurar permisos específicos del repositorio

Además, la ubicación de un repositorio puede ser una región o una multirregión.

Estos cambios te proporcionan más control de tus repositorios. Por ejemplo, si tienes equipos en São Paulo y en Sídney, puedes crear un repositorio para cada equipo en la región más cercana a una ubicación multirregional.

southamerica-east1-docker.pkg.dev/my-project/team1/webapp
australia-southeast1-docker.pkg.dev/my-project/team2/webapp

Luego, puedes otorgarle a cada equipo permisos solo para el repositorio de ese equipo.

Consulta la guía de configuración a fin de obtener instrucciones para realizar la transición a Artifact Registry.

Envía y extrae imágenes

Para ayudarte a adaptar la configuración, los comandos y la documentación existentes diseñados para Container Registry, la siguiente información compara la compilación, el envío, la extracción y la implementación de imágenes.

Comparación de funciones

En esta sección, se resumen los cambios y las mejoras en las características de Container Registry.

Función Container Registry Artifact Registry
Formatos admitidos Solo imágenes de contenedor Varios formatos de artefactos, incluidas imágenes de contenedor, paquetes de lenguaje y paquetes de SO
Repositorios
  • Creación: Crea un repositorio en una multirregión de forma automática si aún no enviaste una imagen allí.
  • Ubicación: Solo repositorios multirregionales.
  • Organización: Todos los repositorios en el mismo host multirregional de un proyecto de Google Cloud comparten un único bucket de almacenamiento.
  • Control de acceso: Otorga permisos a nivel de proyecto o en el bucket de almacenamiento para cada host multirregional.
  • Creación: Debes crear un repositorio antes de enviar imágenes a él.
  • Ubicación: crea repositorios estándar en una multirregión o región. Por ejemplo, la multirregión más cercana a Australia es Asia. Con la asistencia regional, puedes crear un repositorio en el centro de datos de Sídney.
  • Organización: puedes crear varios repositorios discretos en cada región o multirregión. Aplica etiquetas para agruparlas por equipo, etapa de desarrollo o alguna otra categoría.
  • Control de acceso: Otorga permisos en el proyecto o en repositorios individuales.
Nombres de host Los hosts están en el dominio gcr.io. Los hosts están en el dominio pkg.dev. Para obtener más información sobre el formato de nombre, consulta Nombres de repositorio y artefactos.

Puedes usar la compatibilidad con el dominio gcr.io para redireccionar de forma automática el tráfico de tus hosts de gcr.io> a los repositorios de Artifact Registry del mismo proyecto.

Permisos
  • Otorga acceso mediante permisos de Cloud Storage.
  • Puedes restringir el acceso a todas las imágenes almacenadas en una multirregión, pero no en repositorios individuales. Por ejemplo, puedes restringir el acceso a us.gcr.io en el proyecto my-project, pero no puedes otorgar permisos específicos para imágenes en us.gcr.io/my-project/team1 y us.gcr.io/my-project/team2.
  • Otorga acceso mediante permisos de Artifact Registry.
  • Puedes restringir el acceso a repositorios individuales. Por ejemplo, puedes controlar de manera independiente el acceso a las imágenes en us-docker.pkg.dev/my-project/team1 y us-docker.pkg.dev/my-project/team2.
Authentication Proporciona varios métodos de autenticación para enviar y extraer imágenes con un cliente de terceros. Artifact Registry admite los mismos métodos de autenticación que Container Registry. Consulta Configurar la autenticación para Docker a fin de obtener más detalles.

Si usas el auxiliar de credenciales de Docker, haz lo siguiente:

  • Se requiere la versión 2.0.0 o una posterior.
  • Las versiones del cliente de Docker anteriores a la 18.03 ya no son compatibles.
  • Debes agregar las ubicaciones de Artifact Registry que usarás para la configuración del auxiliar de credenciales.
Claves de encriptación administradas por el cliente (CMEK) Usa CMEK para encriptar los buckets de almacenamiento que contienen tus imágenes. Usa CMEK para encriptar repositorios individuales.
Uso de Google Cloud Console Visualiza y administra imágenes de Container Registry desde la sección Container Registry de Cloud Console. Visualiza una lista de tus repositorios de Artifact Registry y Container Registry en la sección Artifact Registry de Cloud Console. Administra tus imágenes y repositorios de Artifact Registry desde esta página.

Si haces clic en un repositorio de Container Registry, se te dirige a la lista de imágenes en la sección Container Registry de Cloud Console.

Uso de los comandos de la API y de gcloud Usa los comandos de las imágenes de contenedores de gcloud. Los comandos admiten resúmenes abreviados. Si no especificas la string de resumen completa, Container Registry intenta ubicar la imagen correcta según la string parcial. Usa comandos de Docker de los artefactos de gcloud. Los comandos no admiten resúmenes abreviados.

Para obtener una comparación de los comandos de gcloud de Container Registry y Artifact Registry, consulta la comparación de los comandos de gcloud.

Artifact Registry también incluye una API para administrar repositorios y artefactos en todos los formatos.

Notificaciones de Pub/Sub Publica cambios en el tema gcr. Publica cambios en el tema gcr. Si creas repositorios en el mismo proyecto que tu servicio existente de Container Registry, la configuración existente de Pub/Sub funciona de forma automática.

Para obtener más información, consulta Configura notificaciones de Pub/Sub.

Imágenes de Docker Hub almacenadas en caché Almacena en caché las imágenes de Docker Hub más solicitadas en mirror.gcr.io. mirror.gcr.io continúa almacenando en caché las imágenes solicitadas con frecuencia de Docker Hub.
Controles del servicio de VPC Puedes agregar Container Registry a un perímetro de servicio. Puedes agregar Artifact Registry a un perímetro de servicio.
Almacenamiento y análisis de metadatos Container Analysis proporciona almacenamiento de metadatos, análisis de vulnerabilidades e integración con servicios que usan los metadatos, como la autorización binaria. Los comandos del SDK de Cloud para trabajar con notas y casos se encuentran en el grupo de las imágenes de contenedores de gcloud. Container Analysis admite el almacenamiento de metadatos y el análisis de vulnerabilidades para las imágenes de contenedores en Artifact Registry y Container Registry.
  • Ambos productos usan las mismas API de Container Analysis. Cuando habilitas las API de Container Analysis en Container Registry o en Artifact Registry, estas se activan para ambos productos.
  • Ambos productos usan los mismos temas de Pub/Sub para las notificaciones de Container Analysis. Tus suscripciones existentes incluirán notificaciones de Artifact Registry y Container Registry.
  • Los comandos del SDK de Cloud para trabajar con notas y casos se encuentran en el grupo del Docker de los artefactos de gcloud.
Imágenes que proporciona Google Las imágenes que proporciona Google están alojadas en gcr.io. Estos son algunos ejemplos: Las imágenes que proporciona Google siguen estando disponibles en gcr.io.
Precios Los precios de Container Registry se basan en el uso de Cloud Storage, incluido el almacenamiento y la salida de red. Artifact Registry tiene sus propios precios, según el almacenamiento y la salida de red.