Personaliza imágenes de contenedor de Cloud Shell

En esta página, se describe cómo crear y usar una imagen personalizada de Docker como entorno de Cloud Shell.

Para crear una experiencia personalizada de Cloud Shell, crea una imagen de Docker. que funciona como un entorno personalizado de Cloud Shell con paquetes adicionales especificados y configuraciones personalizadas. Tu imagen de Docker se debe basar en la imagen base de Cloud Shell y alojarse en Container Registry.

Si prefieres usar una imagen de Docker privada, considera usar Cloud Workstations para personalizar imágenes de contenedor en lugar del editor de Cloud Shell.

Crea una imagen personalizada de Docker


Para seguir la guía paso a paso sobre esta tarea directamente en el editor de Cloud Shell, haz clic en Guiarme:

GUIARME


Para crear tu propia imagen de Docker personalizada, sigue estas instrucciones:

  1. En una pestaña de la terminal de Cloud Shell, ejecuta el siguiente comando para crear una imagen personalizada estándar en un repositorio alojado por Cloud Source Repositories:

    cloudshell env create-custom-image NEW_REPO_NAME
    

    Como alternativa, si prefieres implementar de forma manual en Container Registry o usar tu propio flujo de automatización, puedes crear un Dockerfile nuevo y vacío, y avanzar al paso 3.

  2. Abre tu nuevo Dockerfile siguiendo las instrucciones impresas en tu Línea de comandos:

    cd $HOME/NEW_REPO_NAME && cloudshell edit Dockerfile
    
  3. Agrega los paquetes adicionales que desees que estén disponibles en tu experiencia de Cloud Shell debajo de la primera línea. Por ejemplo:

    FROM gcr.io/cloudshell-images/cloudshell:latest
    RUN apt-get -y install lsof
    

    La primera línea de tu Dockerfile, FROM gcr.io/cloudshell-images/cloudshell:latest, hace referencia a la imagen base de Cloud Shell y no se debe quitar.

  4. Para compilar tu imagen de forma local, ejecuta el siguiente comando:

    cloudshell env build-local
    
  5. Ejecuta el siguiente comando para probar la imagen de forma local y verificar que los paquetes instalados estén presentes:

    cloudshell env run
    

    Para salir de la prueba, ejecuta lo siguiente:

    exit
    
  6. Confirma los cambios de tu código de manera local:

    git commit -a -m "Initial custom environment check-in."
    
  7. Envíe los cambios de los códigos a Cloud Source Repositories:

    git push origin master
    
  8. Por último, envía tu imagen personalizada a Container Registry:

    cloudshell env push
    

Para usar tu imagen personalizada con los vínculos Abrir en Cloud Shell, primero debes hacerla pública. Pasos para crear una imagen personalizada public, sigue la Guía de control de acceso de Container Registry.

Después de configurar la configuración de acceso correcta, puedes actualizar el vínculo Open in Cloud Shell para especificar los parámetros cloudshell_git_repo y cloudshell_image. Por ejemplo, para agregar un botón Open in Cloud Shell, edita las URLs del siguiente ejemplo y, luego, agrega un vínculo similar al siguiente a tu archivo Markdown:

[![Open in Cloud Shell](https://gstatic.com/cloudssh/images/open-btn.svg)](https://shell.cloud.google.com/cloudshell/editor?cloudshell_git_repo=REPO_URL&cloudshell_image=DOCKER_IMAGE_URL)

Reemplaza los siguientes valores:

  • REPO_URL: Es la URL de la ubicación de tu repositorio.
  • DOCKER_IMAGE_URL: Es la URL a la imagen de Docker.

Para obtener más información sobre estos y otros parámetros, consulta Abrir en Cloud Shell.

Cómo mantener actualizada la imagen de contenedor personalizada

Tu contenedor personalizado debe basarse en la imagen de Cloud Shell pública más reciente para funcionar en Cloud Shell. Te recomendamos que realices recompilaciones semanales para mantener la imagen personalizada actualizada.