Desplegar contenedores en instancias y grupos de instancias gestionados


Puedes configurar una instancia de Compute Engine o una plantilla de instancia para desplegar e iniciar un contenedor Docker. Compute Engine proporciona una imagen actualizada de Container-Optimized OS (COS) con Docker instalado e inicia el contenedor cuando se inicia la instancia.

Antes de empezar

Elegir desplegar contenedores en instancias y MIGs

Si despliegas contenedores en Compute Engine, puedes simplificar el despliegue de aplicaciones y, al mismo tiempo, controlar la infraestructura de tus instancias.

  • Gestiona las instancias que ejecutan contenedores de la misma forma que lo harías con cualquier otra instancia al configurar y gestionar tu infraestructura de Compute Engine.
  • Usa procesos y herramientas que ya conoces, como la CLI de Google Cloud o la API de Compute Engine, para gestionar tus instancias con contenedores.
  • Crea servicios escalables con grupos de instancias gestionados (MIGs) que ejecuten contenedores, que ofrecen funciones como el autoescalado, la reparación automática, las actualizaciones continuas, los despliegues multizona y el balanceo de carga.

También puedes desplegar en Google Kubernetes Engine para:

  • Ejecutar un gran número de microservicios
  • Tener un tiempo de inicio del contenedor más rápido
  • Aprovecha la orquestación automatizada de Kubernetes, incluidas las actualizaciones automáticas, la reparación automática de nodos y el autoescalado.

Si ejecutas cada microservicio en una instancia independiente de Compute Engine, la sobrecarga del sistema operativo podría suponer una parte importante de tu coste. Google Kubernetes Engine te permite desplegar varios contenedores y grupos de contenedores en cada instancia, lo que puede asignar recursos de instancia de host de forma más eficiente a microservicios con un tamaño más reducido.

Cómo funciona el despliegue de contenedores en Compute Engine

Estos son los métodos habituales para desplegar software en una instancia de Compute Engine:

Ambos métodos de la lista anterior combinan las tareas de configurar la aplicación y de configurar el entorno del sistema operativo. Como desarrollador, debes hacer un seguimiento minucioso de las dependencias del tiempo de ejecución y resolverlas. Por ejemplo, si dos aplicaciones que se ejecutan en una máquina virtual usan versiones diferentes de la misma biblioteca, debes instalar ambas versiones y hacer referencia a ellas mediante variables del sistema.

Aplicaciones que se ejecutan en diferentes versiones de la misma biblioteca.
Una instancia con aplicaciones implementadas directamente en el sistema operativo

También puedes desplegar software en un contenedor en una instancia o en un MIG. Un contenedor incluye tanto el software de la aplicación como las bibliotecas necesarias, y está aislado de las aplicaciones y bibliotecas del SO. Un contenedor se puede mover entre entornos de implementación sin tener que lidiar con versiones de bibliotecas conflictivas en el contenedor y su sistema operativo.

Ejemplo de aplicaciones desplegadas en contenedores.
Una instancia con aplicaciones desplegadas en un contenedor

En el siguiente proceso se describe cómo desplegar un contenedor en Compute Engine:

  1. Empaqueta tu aplicación y las bibliotecas necesarias en una imagen Docker y publica la imagen en Artifact Registry o en un registro de terceros, como Docker Hub.
  2. Cuando creas una instancia o una plantilla de instancia para un MIG, especificas un nombre de imagen de Docker y la docker runconfiguración.

Compute Engine ejecuta las siguientes tareas después de que hagas una solicitud para crear una instancia:

  1. Compute Engine crea una instancia de VM que usa una imagen de Container-Optimized OS proporcionada por Google. Esta imagen incluye un entorno de ejecución de Docker y software adicional que se encarga de iniciar el contenedor.
  2. Compute Engine almacena la configuración de tu contenedor en los metadatos de la instancia, en la clave de metadatos gce-container-declaration.
  3. Cuando se inicia la VM, la imagen de Container-Optimized OS usa la configuración del comando docker run que se almacena en los metadatos de la instancia, extrae la imagen de contenedor del repositorio e inicia el contenedor.
Usando la imagen de contenedor y el comando docker run.
Pasos para crear una instancia o un grupo de instancias gestionado que ejecute un contenedor

Limitaciones

  • Solo puedes desplegar un contenedor por instancia. Si necesitas desplegar varios contenedores por instancia, te recomendamos que uses Google Kubernetes Engine.
  • Solo puedes desplegar contenedores desde un repositorio público o desde un repositorio privado de Artifact Registry o Container Registry al que tengas acceso. No se admiten otros repositorios privados.

    Consulta la documentación sobre el control de acceso de Artifact Registry o Container Registry para obtener información sobre los permisos de registro privado.

  • No puedes asignar los puertos de una instancia a los puertos del contenedor (opción -p de Docker). Para habilitar el acceso a tus contenedores, consulta Publicar puertos de contenedores.

  • Con este método de implementación, solo puedes usar imágenes de Container-Optimized OS.

  • Solo puedes usar esta función a través de la consola Google Cloud o de la CLI de Google Cloud, no mediante la API.

Preparar un contenedor para el despliegue

Elige uno de los siguientes métodos para que tu imagen de contenedor sea accesible a Compute Engine:

  • Sube tu imagen Docker a Artifact Registry.
  • Usa cualquier imagen de contenedor disponible públicamente de Docker Hub u otros registros.

Desplegar un contenedor en una instancia nueva

Puedes desplegar un contenedor en una instancia de VM nueva mediante laGoogle Cloud consola o la CLI de Google Cloud.

Consola

En el siguiente ejemplo se implementa un contenedor a partir de una imagen de Docker de Nginx proporcionada por Google, https://gcr.io/cloud-marketplace/google/nginx1:latest, en una instancia de VM. Para usar otra imagen Docker, sustituye la imagen Docker de Nginx por la que quieras en los siguientes pasos.

Ir a Crear una instancia

Si se te solicita, selecciona tu proyecto y haz clic en Continuar. Aparecerá la página Crear una instancia y se mostrará el panel Configuración de la máquina.

  1. En el panel Configuración de la máquina, ve a Nombre y especifica un nombre para tu instancia. Para obtener más información, consulta el artículo sobre las convenciones para asignar nombres de recursos.

  2. En el menú de navegación, haz clic en SO y almacenamiento. Aparecerá el panel Sistema operativo y almacenamiento.

  3. Vaya a la sección Contenedor y, a continuación, haga clic en Implementar contenedor. En el panel Configurar contenedor que aparece, haz lo siguiente:

    1. Especifica la imagen de contenedor que quieras usar. Ten en cuenta los siguientes ejemplos:
      • Para seleccionar una imagen de contenedor de NGINX 1.12 de Cloud Launcher, especifica gcr.io/cloud-marketplace/google/nginx1:1.12.
      • Para desplegar una imagen de contenedor Apache desde Docker Hub, especifica siempre el nombre completo de la imagen Docker, como docker.io/httpd:2.4.
    2. Opcional. Especifique cualquier otro parámetro de configuración que quiera. Para obtener más información sobre las opciones de configuración de contenedores, consulta el artículo Configurar las opciones para ejecutar tu contenedor.
    3. Para terminar de configurar el contenedor y volver al panel Sistema operativo y almacenamiento, haz clic en Seleccionar.
  4. Opcional: Especifica otras opciones de configuración. Para obtener más información, consulta Opciones de configuración durante la creación de instancias.

  5. Para terminar de crear la instancia, haz clic en Crear.

    Después de crear la instancia, Compute Engine la inicia y lanza el contenedor.

gcloud

  1. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

  2. Ejecuta el comando gcloud compute instances create-with-container:

    gcloud compute instances create-with-container INSTANCE_NAME \
        --container-image=CONTAINER_IMAGE
    

    Haz los cambios siguientes:

    • INSTANCE_NAME: nombre de la nueva instancia.
    • CONTAINER_IMAGE: nombre de la imagen del contenedor.

    Por ejemplo, el siguiente comando crea una instancia llamada nginx-vm, que inicia y ejecuta la imagen del contenedor:

    gcr.io/cloud-marketplace/google/nginx1:1.12

    gcloud compute instances create-with-container nginx-vm \
        --container-image=gcr.io/cloud-marketplace/google/nginx1:1.12
    

    Para desplegar una imagen de contenedor Apache desde Docker Hub, especifica siempre el nombre completo de la imagen Docker:

    docker.io/httpd:2.4.

Actualizar un contenedor en una instancia

Puedes actualizar una imagen de Docker y las opciones de configuración para ejecutar el contenedor en una instancia mediante la consola o la CLI de Google Cloud. Google Cloud

Cuando actualizas un contenedor en ejecución, Compute Engine realiza dos pasos:

  • Actualiza la declaración del contenedor en la instancia. Compute Engine almacena la declaración de contenedor actualizada en los metadatos de la instancia, en la clave de metadatos gce-container-declaration.
  • Detiene y reinicia la instancia para activar la configuración actualizada, si la instancia está en ejecución. Si la instancia está detenida, actualiza la declaración del contenedor y mantiene la instancia detenida. La instancia descarga la nueva imagen e inicia el contenedor al arrancar.

Consola

  1. Ve a la página Instancias de VM.

    Ir a instancias de VM

  2. Haz clic en el nombre de la instancia que quieras actualizar.

  3. En la página de detalles de la instancia, haz clic en Editar.

  4. Especifica la nueva imagen del contenedor y actualiza las opciones para ejecutar el contenedor según sea necesario.

  5. Para guardar los cambios, haz clic en Guardar y reiniciar. Compute Engine guarda los cambios y reinicia la instancia automáticamente para aplicar la actualización. Una vez que se reinicie la instancia, descargará la nueva imagen e iniciará el contenedor con la configuración actualizada.

gcloud

Actualiza la declaración del contenedor con el comando gcloud compute instances update-container. Por ejemplo:

gcloud compute instances update-container nginx-vm \
    --container-image gcr.io/cloud-marketplace/google/nginx1:latest

Este comando define la imagen del contenedor como gcr.io/cloud-marketplace/google/nginx1:latest y reinicia la instancia para aplicar los cambios. También puedes actualizar cualquiera de las propiedades descritas en Configurar opciones para ejecutar el contenedor añadiendo las marcas correspondientes.

Una vez que se reinicie la instancia, descargará la nueva imagen de contenedor e iniciará el contenedor con la nueva configuración.

Desplegar un contenedor en un grupo de instancias gestionado

Puedes implementar un contenedor en un nuevo grupo de instancias gestionado (MIG) mediante laGoogle Cloud consola o la CLI de Google Cloud. Para ello, sigue estos pasos:

  1. Crea una plantilla de instancia basada en una imagen Docker.

  2. Crea un MIG a partir de la nueva plantilla de instancia.

Consola

En el siguiente ejemplo se crea una plantilla de instancia que implementa un contenedor de una imagen Docker de Nginx (gcr.io/cloud-marketplace/google/nginx1:15) proporcionada por Google en un MIG. Para usar otras imágenes de Docker, sustituye gcr.io/cloud-marketplace/google/nginx1:15 en el siguiente ejemplo por la imagen que quieras usar.

  1. Ve a la página Plantillas de instancias.

    Ir a Plantillas de instancia

  2. Para crear una plantilla de instancia, haga clic en Crear plantilla de instancia.

  3. En Contenedor, selecciona Desplegar imagen de contenedor.

  4. En Imagen de contenedor, especifica el nombre de la imagen de Docker y configura las opciones para ejecutar el contenedor. Por ejemplo, puedes especificar gcr.io/cloud-marketplace/google/nginx1:15 para la imagen del contenedor.

  5. Haz clic en Crear.

A continuación, crea un MIG que use la nueva plantilla de instancia.

gcloud

Crea una plantilla de instancia para ejecutar imágenes de Docker con el comando gcloud compute instance-templates create-with-container:

gcloud compute instance-templates create-with-container TEMPLATE_NAME \
  --container-image DOCKER_IMAGE

También puedes configurar opciones para ejecutar tu contenedor.

Por ejemplo, el siguiente comando crea una plantilla de instancia con el nombre nginx-template, que incluye información sobre la imagen de Docker. Una instancia creada a partir de esta plantilla se inicia y ejecuta la imagen de Docker gcr.io/cloud-marketplace/google/nginx1:15 cuando se inicia la instancia.

gcloud compute instance-templates create-with-container nginx-template \
    --container-image gcr.io/cloud-marketplace/google/nginx1:15

A continuación, crea un MIG con la nueva plantilla de instancia.

Ahora que tienes una plantilla de instancia, puedes crear un MIG que la use. Por ejemplo, para crear un MIG con la CLI de gcloud y el nginx-template que acabas de crear, ejecuta el siguiente comando:

gcloud compute instance-groups managed create example-group \
    --base-instance-name nginx-vm \
    --size 3 \
    --template nginx-template

Actualizar un grupo de instancias gestionadas que ejecuta un contenedor

Puedes actualizar un grupo de instancias gestionado (MIG) para desplegar una nueva versión de una imagen Docker o una nueva versión de la imagen de Container-Optimized OS.

Actualizar un MIG a una nueva versión de una imagen de contenedor

Para desplegar una nueva versión de una imagen de Docker en un MIG, sigue estos tres pasos con el actualizador de grupos de instancias gestionados:

  1. Prepara una nueva imagen Docker para el despliegue.
  2. Crea una plantilla de instancia basada en la nueva imagen de Docker de la misma forma que crearías una plantilla basada en contenedores.
  3. Actualiza un MIG a la nueva plantilla de instancia mediante el actualizador de grupos de instancias gestionadas.

Actualizar un grupo de instancias gestionado a una nueva versión de la imagen de Container-Optimized OS

Google actualiza las imágenes de Container-Optimized OS periódicamente y es posible que quieras aplicar esas actualizaciones a tus MIGs contenerizadas sin cambiar tu imagen Docker. Puedes actualizar un MIG a una nueva versión de una imagen de Container-Optimized OS mediante la Google Cloud consola o la CLI de Google Cloud en dos pasos:

  1. Crea una plantilla de instancia basada en la versión actual de tu imagen de Docker, del mismo modo que crearías una plantilla basada en contenedores para un MIG nuevo. De forma predeterminada, se usa la versión más reciente compatible de una imagen de Container-Optimized OS.
  2. Actualiza un MIG con la nueva plantilla de instancia mediante Managed Instance Group Updater.

Conectarse a un contenedor mediante SSH

Puedes conectarte a un contenedor de una instancia mediante SSH. Usa la CLI de gcloud para ejecutar gcloud compute ssh con la marca --container:

gcloud compute ssh INSTANCE_NAME --container CONTAINER_NAME

Haz los cambios siguientes:

  • INSTANCE_NAME: el nombre de la instancia
  • CONTAINER_NAME: el nombre del contenedor

Consulta más información sobre el comando gcloud compute ssh y sus argumentos.

Monitorizar contenedores en Compute Engine

Para monitorizar las instancias que ejecutan una imagen de Container-Optimized OS, usa el agente Node Problem Detector, que se comunica con Cloud Monitoring y envía métricas relacionadas con el estado. El agente está integrado en las imágenes de Container-Optimized OS a partir de Milestone 77.

Para habilitar el agente, en los contenedores que usen imágenes con Milestone 88 o versiones posteriores, edita la sección de metadatos personalizados y asigna el valor google-monitoring-enabled a true.

Para ver otras formas de habilitar Node Problem Detector, consulta Habilitar la monitorización del estado.

El agente Node Problem Detector admite las métricas de la lista de métricas que empiezan por guest/.

Para interactuar con las métricas recogidas por el agente, ve al explorador de métricas.

Ver registros

Puedes ver tres tipos de registros relacionados con los contenedores:

  1. Registros del agente de inicio, también conocidos como registros de konlet. El agente de inicio analiza la configuración del contenedor y ejecuta tareas para iniciar el contenedor en una instancia de Compute Engine.

  2. Los registros de eventos de Docker informan de los eventos de los contenedores, incluidos los eventos de inicio y detención de contenedores.

  3. Los registros de tu contenedor incluyen el STDOUT de las aplicaciones que se ejecutan en tu contenedor.

Ver registros del agente de inicio

Los registros del agente de inicio están disponibles en la consola serie, a través del servicio de sistema journald incluido en la imagen del SO y a través de Cloud Logging.

Ver los registros del agente de inicio en la consola serie

Consola

  1. Ve a la página Instancias de VM.

    Ir a instancias de VM

  2. Selecciona la instancia de la que quieras ver los registros de agentes de inicio.

  3. En Registros, haz clic en Puerto serie 1 (consola) para ver los registros de la consola serie.

gcloud

Usa el comando get-serial-port-output para ver los registros del puerto serie de la instancia.

gcloud compute instances get-serial-port-output INSTANCE_NAME

Sustituye INSTANCE_NAME por el nombre de la instancia.

Por ejemplo, usa el siguiente comando para ver la salida del puerto serie de una instancia llamada nginx-vm:

gcloud compute instances get-serial-port-output nginx-vm

Ver los registros del agente de inicio en journald

  1. Conéctate a tu instancia con un contenedor mediante SSH.
  2. Ejecuta el comando sudo journalctl para ver los registros de inicio de la instancia y del contenedor. Usa el siguiente comando para filtrar los registros del agente de inicio del contenedor (konlet).

    sudo journalctl -u konlet*
    

Ver los registros del agente de inicio en Logging

Consola

  1. Ve a la página Instancias de VM.

    Ir a instancias de VM

  2. Selecciona la instancia de la que quieras ver los registros de agentes de inicio.

  3. En Registros, haz clic en Cloud Logging para ver los registros de Cloud Logging.

  4. Introduce un filtro de búsqueda para obtener los registros del agente de inicio.

    resource.type="gce_instance"
    logName="projects/PROJECT_ID/logs/cos_system"
    jsonPayload.SYSLOG_IDENTIFIER="konlet-startup"
    jsonPayload._HOSTNAME="INSTANCE_NAME"
    

    Haz los cambios siguientes:

    • PROJECT_ID: el ID del proyecto que contiene la instancia
    • INSTANCE_NAME: el nombre de la instancia de la que quieres obtener los registros

gcloud

Usa el comando gcloud logging read con un filtro adecuado para ver los registros del agente de inicio del contenedor.

gcloud logging read "resource.type=gce_instance AND \
    logName=projects/PROJECT_ID/logs/cos_system AND \
    jsonPayload.SYSLOG_IDENTIFIER=konlet-startup AND \
    jsonPayload._HOSTNAME=INSTANCE_NAME"

Haz los cambios siguientes:

  • PROJECT_ID: el ID del proyecto que contiene la instancia
  • INSTANCE_NAME: el nombre de la instancia de la que quieres obtener los registros.

Por ejemplo, usa el siguiente comando para ver los últimos 10 registros de agentes de inicio en Logging de una instancia llamada nginx-vm que ejecuta COS 70 y que se encuentra en my-project.

gcloud logging read "resource.type=gce_instance AND \
    logName=projects/my-project/logs/cos_system AND \
    jsonPayload.SYSLOG_IDENTIFIER=konlet-startup AND \
    jsonPayload._HOSTNAME=nginx-vm" \
    --limit 10

Ver registros de eventos de Docker

Puedes ver los registros de eventos de Docker en journald y en Cloud Logging.

Ver los registros de eventos de Docker en journald

  1. Conéctate a tu instancia con un contenedor mediante SSH.
  2. Ejecuta el comando sudo journalctl con el siguiente filtro para ver los registros de eventos de Docker.

    sudo journalctl -u docker-events-collector
    

Ver registros de eventos de Docker en Logging

Consola

  1. Ve a la página Instancias de VM.

    Ir a instancias de VM

  2. Selecciona la instancia de la que quieras ver los registros de agentes de inicio.

  3. En Registros, haz clic en Cloud Logging para ver los registros de Cloud Logging.

  4. Introduce el siguiente filtro de búsqueda para obtener los registros de eventos de Docker.

    resource.type="gce_instance"
    logName="projects/PROJECT_ID/logs/cos_system"
    jsonPayload._HOSTNAME="INSTANCE_NAME"
    jsonPayload.SYSLOG_IDENTIFIER="docker"
    

    Haz los cambios siguientes:

    • PROJECT_ID: el ID del proyecto que contiene la instancia
    • INSTANCE_NAME: el nombre de la instancia de la que quieres obtener los registros

gcloud

Usa el comando gcloud logging read con un filtro adecuado para ver los registros de eventos de Docker.

gcloud logging read "resource.type=gce_instance AND \
    logName=projects/PROJECT_ID/logs/cos_system AND \
    jsonPayload._HOSTNAME=INSTANCE_NAME AND \
    jsonPayload.SYSLOG_IDENTIFIER=docker"

Haz los cambios siguientes:

  • PROJECT_ID: el ID del proyecto que contiene la instancia
  • INSTANCE_NAME: el nombre de la instancia de la que quieres obtener los registros

Por ejemplo, usa el siguiente comando para ver los últimos 10 registros de eventos de Docker en Logging de una instancia llamada nginx-vm que ejecuta COS 70 y que se encuentra en my-project.

gcloud logging read "resource.type=gce_instance AND \
    logName=projects/my-project/logs/cos_system AND \
    jsonPayload._HOSTNAME=nginx-vm AND \
    jsonPayload.SYSLOG_IDENTIFIER=docker" \
    --limit 10

Ver registros de contenedores

Consola

  1. Ve a la página Instancias de VM.

    Ir a instancias de VM

  2. Selecciona la instancia de la que quieras ver los registros de agentes de inicio.

  3. En Registros, haz clic en Cloud Logging para ver los registros de Cloud Logging.

    Registra el puerto serie 1.

  4. La página Cloud Logging se carga con un filtro de búsqueda predeterminado. Copia el valor de resource.labels.instance_id. Lo usarás más adelante.

  5. Actualiza el filtro de búsqueda para obtener los registros del contenedor.

    resource.type="gce_instance"
    logName="projects/PROJECT_ID/logs/cos_containers"
    resource.labels.instance_id="INSTANCE_ID"
    

    Haz los cambios siguientes:

    • PROJECT_ID: el ID del proyecto que contiene la instancia
    • INSTANCE_ID: el ID de la instancia de la que quieres obtener los registros

gcloud

Usa el comando gcloud logging read para ver los registros de los contenedores.

  1. Determina el ID de la instancia de la que quieras obtener los registros:

    gcloud compute instances describe INSTANCE_NAME \
       --zone ZONE \
       --format="value(id)"
    

    Haz los cambios siguientes:

    • INSTANCE_NAME: el nombre de la instancia de la que quieres obtener los registros.
    • ZONE: la zona en la que se encuentra la instancia
  2. Usa el siguiente comando y filtro para ver los registros de contenedores de la instancia.

    gcloud logging read "resource.type=gce_instance AND \
        logName=projects/PROJECT_ID/logs/cos_containers AND \
        resource.labels.instance_id=INSTANCE_ID"
    

    Haz los cambios siguientes:

    • PROJECT_ID: el ID del proyecto que contiene la instancia.
    • INSTANCE_ID: el ID de la instancia.

    Por ejemplo, usa el siguiente comando para ver los últimos 10 registros de contenedor en Cloud Logging de una instancia que ejecuta COS 70, que se encuentra en my-project y que tiene el ID de instancia 555123456789012345.

    gcloud logging read "resource.type=gce_instance AND \
        logName=projects/my-project/logs/cos_containers AND \
        resource.labels.instance_id=555123456789012345" \
        --limit 10
    

Especificar imágenes o familias de imágenes optimizadas para contenedores

Las instancias o plantillas de instancias contenerizadas se crean para usar la imagen optimizada para contenedores más reciente compatible de forma predeterminada. La imagen pertenece al proyecto cos-cloud.

Puedes anular este valor predeterminado con otra imagen del proyecto cos-cloud. Para obtener información sobre las familias de imágenes disponibles y sus atributos, consulta Elegir la versión adecuada de Container-Optimized OS.

Por ejemplo, después de saber qué imagen quieres usar, en la interfaz de línea de comandos de gcloud, proporciona la marca --image para anular la imagen optimizada para contenedores predeterminada o la marca --image-family para elegir la imagen más reciente de la familia especificada en el momento de crear la instancia.

En el siguiente ejemplo se crea una instancia contenerizada que usa la imagen más reciente de la familia de imágenes cos-dev:

gcloud compute instances create-with-container nginx-vm \
    --image-family cos-dev \
    --image-project cos-cloud \
    --container-image gcr.io/cloud-marketplace/google/nginx1:1.15

Configurar reglas de cortafuegos

Las instancias contenerizadas inician contenedores cuya red está configurada en modo de host. Un contenedor comparte la pila de red del host y todas las interfaces del host están disponibles para el contenedor.

De forma predeterminada, Google Cloud las reglas de cortafuegos bloquean todas las conexiones entrantes a una instancia y permiten todas las conexiones salientes de una instancia.

Crea reglas de cortafuegos para permitir las conexiones entrantes a tu instancia y, por lo tanto, al contenedor.

Configurar las opciones para ejecutar un contenedor

Puedes configurar las siguientes opciones para ejecutar tu contenedor:

  • Especifica una política de reinicio de contenedores.
  • Anula el contenedor ENTRYPOINT (comando predeterminado que se ejecutará al iniciar el contenedor).
  • Transfiere argumentos al comando ENTRYPOINT del contenedor.
  • Ejecuta un contenedor en modo con privilegios.
  • Monta un directorio de host o tmpfs como volumen de datos dentro del contenedor.
  • Define las variables de entorno.
  • Asigna un búfer para STDIN en el tiempo de ejecución del contenedor.
  • Asigna un pseudo-TTY.

Consulta más información sobre cómo configurar las opciones para ejecutar tu contenedor.

Siguientes pasos