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
- Accede a tu Cuenta de Google.
Si todavía no tienes una cuenta, regístrate para obtener una nueva.
-
En la página del selector de proyectos de Google Cloud Console, selecciona o crea un proyecto de Google Cloud.
-
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.
- Habilita la API Container Registry.
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:
Ve a Google Cloud Console
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:
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 degcloud components update
.Instala Docker si aún no lo hiciste.
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.
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.
Para asegurarte de que Docker esté funcionando, ejecuta el siguiente comando de Docker, que muestra la hora y la fecha actuales:
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
.
- Cambia a un directorio en el que quieras guardar la imagen.
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 predeterminadalatest
.
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?
- Obtén más información sobre cómo enviar y extraer imágenes de Docker con Container Registry.
- Obtén más información sobre cómo administrar imágenes de Docker en Container Registry.
- Obtén más información sobre las funciones de Container Registry.
- Obtén más información acerca de Docker.
- Lee nuestros recursos sobre DevOps y explora nuestro programa de investigación.