Artifact Registry es un servicio universal de administración de paquetes que admite contenedores y otros formatos. Obtén información sobre cómo realizar la transición desde Container Registry para obtener más flexibilidad y control sobre los artefactos.

Guía de inicio rápido para Container Registry

Container Registry es un registro de imágenes de contenedor privado que se ejecuta en Google Cloud.

Esta guía de inicio rápido te muestra cómo hacer lo siguiente:

  • Configura Docker para la autenticación en Container Registry
  • Etiqueta y envía una imagen a tu registro
  • Extrae la imagen de tu registro

Esta guía de inicio rápido se centra en la integración con Docker. Para obtener información general sobre la integración con otros servicios de Google Cloud, consulta Usa Container Registry con Google Cloud.

Antes de comenzar

  1. Accede a tu cuenta de Google Cloud. Si eres nuevo en Google Cloud, crea una cuenta para evaluar el rendimiento de nuestros productos en situaciones reales. Los clientes nuevos también obtienen $300 en créditos gratuitos para ejecutar, probar y, además, implementar cargas de trabajo.
  2. En la página del selector de proyectos de Google Cloud Console, selecciona o crea un proyecto de Google Cloud.

    Ir al selector de proyecto

  3. Asegúrate de que la facturación esté habilitada para tu proyecto de Cloud. Descubre cómo confirmar que tienes habilitada la facturación en un proyecto.

  4. Habilita la API Container Registry.

    Habilita la API

Elige una shell

Para completar esta guía de inicio rápido, usa Cloud Shell o tu shell local.

Cloud Shell
Cloud Shell es un entorno de shell que se usa para administrar recursos alojados en Google Cloud. Viene preinstalado con Docker, la herramienta de línea de comandos de gcloud, la interfaz de línea de comandos principal para Google Cloud.
Shell local
Si prefieres usar tu shell local, debes instalar Docker y el SDK de Cloud en tu entorno.

Inicia Cloud Shell

Para iniciar Cloud Shell, sigue estos pasos:

  1. Ve a Google Cloud Console

    Google Cloud Console

  2. Haz clic en el botón Activar Cloud Shell: “”.

Se abrirá una sesión de Cloud Shell dentro de un marco en la parte inferior en la consola. Usa esta shell para ejecutar los comandos de gcloud.

Configura una shell local

Si deseas instalar gcloud y Docker, sigue los siguientes pasos:

  1. Instala el SDK de Cloud, que incluye la herramienta de línea de comandos de gcloud. Para actualizar una instalación existente, ejecuta el comando de gcloud components update.

  2. Instala Docker si aún no lo hiciste.

  3. Docker necesita acceso con privilegios para interactuar con los registros. En Linux o Windows, agrega el usuario que usas para ejecutar comandos de Docker al grupo de seguridad de Docker. Este paso no es necesario en Mac OS, ya que Docker Desktop se ejecuta en una máquina virtual como usuario raíz.

    Linux

    El grupo de seguridad de Docker se llama docker. Para agregar tu nombre de usuario, ejecuta el siguiente comando:

    sudo usermod -a -G docker ${USER}
    

    Windows

    El grupo de seguridad de Docker se llama docker-users. Para agregar un usuario desde el símbolo del sistema del administrador, ejecuta el siguiente comando:

    net localgroup docker-users DOMAIN\USERNAME /add
    

    Donde

    • DOMAIN es tu dominio de Windows.
    • USERNAME es tu nombre de usuario.
  4. Sal de tu cuenta y vuelve a acceder para que se apliquen los cambios de membresía de grupo. Si utilizas una máquina virtual, es posible que tengas que reiniciarla para que se apliquen los cambios de membresía.

  5. Para asegurarte de que Docker esté funcionando, ejecuta el siguiente comando de Docker, que muestra la hora y la fecha actuales:

  6. docker run busybox date
    

Configura la autenticación

Antes de poder enviar o extraer imágenes, debes configurar Docker para que use la herramienta de línea de comandos de gcloud a fin de autenticar las solicitudes a Container Registry.

Ejecuta el siguiente comando:

gcloud auth configure-docker

El comando actualiza tu configuración de Docker. Ahora puedes conectarte con Container Registry en tu proyecto de Google Cloud para enviar y extraer imágenes.

Cómo obtener una imagen para enviar

Para esta guía de inicio rápido, enviarás una imagen de muestra llamada hello-app.

  1. Cambia a un directorio en el que quieras guardar la imagen.
  2. Ejecuta el siguiente comando para extraer la versión 1.0 de la imagen.

    docker pull gcr.io/google-samples/hello-app:1.0
    

Agrega la imagen a Container Registry

Para agregar una imagen a Container Registry, debes etiquetarla y, luego, enviarla al registro.

Etiqueta la imagen con un nombre de registro

Etiquetar la imagen de Docker con un nombre de registro configura el comando docker push para enviar la imagen a una ubicación específica. Para esta guía de inicio rápido, la ubicación del host es gcr.io.

Ejecuta el siguiente comando para etiquetar la imagen como quickstart-image:tag1:

docker tag gcr.io/google-samples/hello-app:1.0 gcr.io/PROJECT_ID/quickstart-image:tag1

Reemplaza lo siguiente:

  • PROJECT-ID es tu ID del proyecto de Google Cloud Console, que debes agregar a tu comando. Si el ID de tu proyecto contiene dos puntos (:), consulta Proyectos con alcance de dominio.
  • gcr.io es el nombre de host.
  • quickstart-image es el nombre de la imagen de Docker.
  • tag1 es una etiqueta que agregas a la imagen de Docker. Si no especificaste una etiqueta, Docker aplicará la etiqueta predeterminada latest.

Ahora estás listo para enviar la imagen a Container Registry.

Envía la imagen a Container Registry

Una vez que hayas configurado la autenticación y etiquetado la imagen local, puedes enviar la imagen al repositorio que creaste.

Para enviar la imagen de Docker, ejecuta el siguiente comando:

docker push gcr.io/PROJECT_ID/quickstart-image:tag1

donde PROJECT_ID es el ID del proyecto de Google Cloud Console. Si el ID de tu proyecto contiene dos puntos (:), consulta Proyectos con alcance de dominio.

Cuando envías una imagen a una nueva ubicación de host, el servicio crea el bucket de almacenamiento subyacente único para tu proyecto. Puedes ver las imágenes alojadas en Container Registry mediante Cloud Console o en tu navegador web mediante la URL del nombre de registro de la imagen: http://gcr.io/PROJECT_ID/quickstart-image.

Extrae la imagen de Container Registry

Para extraer la imagen de Container Registry en tu máquina local, ejecuta el siguiente comando:

docker pull gcr.io/PROJECT_ID/quickstart-image:tag1

Reemplaza PROJECT_ID por el ID de tu proyecto de Google Cloud Console. Si el ID de tu proyecto contiene dos puntos (:), consulta Proyectos con alcance de dominio.

Deberías ver un resultado similar al siguiente:

latest: Pulling from my-project/quickstart-image:tag1
Digest: sha256:70c42...
Status: Image is up to date for gcr.io/my-project/quickstart-image:tag1

Limpia

Sigue estos pasos para evitar que se apliquen cargos a tu cuenta de Google Cloud por los recursos que usaste en esta guía de inicio rápido.

Ejecuta el siguiente comando para borrar la imagen de Docker de Container Registry.

gcloud container images delete gcr.io/PROJECT_ID/quickstart-image:tag1 --force-delete-tags

Reemplaza PROJECT_ID por el ID de tu proyecto de Google Cloud Console. Si el ID de tu proyecto contiene dos puntos (:), consulta Proyectos con alcance de dominio.

¿Qué sigue?