Cree y gestione despliegues de servicios de contenedores en Lightsail - Amazon Lightsail

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Cree y gestione despliegues de servicios de contenedores en Lightsail

Cree una implementación cuando esté listo para lanzar contenedores en su servicio de contenedor de Amazon Lightsail. Una implementación es un conjunto de especificaciones para los contenedores que desea lanzar en el servicio. El servicio de contenedor puede tener una implementación en ejecución cada vez y una implementación puede tener hasta 10 entradas de contenedor. Puede crear una implementación al mismo tiempo que crea el servicio de contenedor, o puede crearla después de que el servicio esté en funcionamiento.

nota

Si crea una nueva implementación, desaparecerán las métricas de utilización existentes del servicio de contenedor y solo se mostrarán las métricas de la nueva implementación actual.

Para obtener más información acerca de los servicios de contenedor, consulte Servicios de contenedor de Amazon Lightsail.

Contenido

Requisitos previos

Complete los siguientes requisitos previos antes de comenzar con la creación de una implementación en el servicio de contenedor:

Parámetros de implementación

En esta sección se describen los parámetros que puede especificar para las entradas de contenedor y el punto de enlace público de la implementación.

Parámetros de entrada de contenedor

Puede tener hasta 10 entradas de contenedor en la implementación. Cada entrada de contenedor tiene los siguientes parámetros que puede especificar:

Configuración de despliegue de un servicio de contenedores en la consola de Lightsail
  • Container name (Nombre del contenedor): ingrese un nombre para el contenedor. Todos los contenedores de una implementación deben tener nombres únicos y solo deben incluir caracteres alfanuméricos y guiones. Un guion puede separar palabras, pero no puede estar al principio o al final del nombre.

  • Source image (Imagen fuente): especifique una imagen de contenedor fuente para el contenedor. Puede especificar imágenes de contenedor de los siguientes orígenes:

  • Comando de lanzamiento: especifique un comando de lanzamiento para ejecutar un script de shell o un script de bash que configure el contenedor cuando se crea. Un comando de lanzamiento puede realizar acciones como agregar software, actualizar software o configurar el contenedor de otra forma.

  • Variables de entorno: especifique las variables de entorno, que son parámetros de valor de clave que proporcionan una configuración dinámica de la aplicación o script ejecutados por el contenedor.

  • Puertos abiertos: especifique los puertos y protocolos que se van a abrir en el contenedor. Puede especificar que se abra cualquier puerto a través de HTTP, HTTPS, TCP y UDP. Debe abrir un puerto HTTP o HTTPS para el contenedor que planea utilizar como punto de enlace público del servicio de contenedor. Consulte la siguiente sección de esta guía para obtener más información.

Parámetros de punto de enlace público

Puede especificar la entrada de contenedor en la implementación que servirá de punto de enlace público del servicio de contenedor. La aplicación en el contenedor de punto de enlace público es accesible públicamente en Internet a través de un dominio predeterminado generado aleatoriamente del servicio de contenedor. El dominio predeterminado tiene el formato siguientehttps://<ServiceName>.<RandomGUID>.<AWSRegion>.cs.amazonlightsail.com: < ServiceName > es el nombre de su servicio de contenedor, <RandomGUID>es un identificador único global generado aleatoriamente de su servicio de contenedores en la región de AWS de su cuenta de Lightsail y < AWSRegion > es la región de AWS en la que se creó el servicio de contenedores. El punto final público de los servicios de contenedores de Lightsail solo admite HTTPS y no admite tráfico TCP o UDP. Solo un contenedor puede ser el punto de enlace público de un servicio. Por lo tanto, asegúrese de elegir el contenedor que aloja el front-end de su aplicación como punto de conexión público mientras que el resto de los contenedores son accesibles internamente.

nota

Puede usar su propio nombre de dominio personalizado con el servicio contenedor. Para obtener más información, consulte Habilitación y administración de dominios personalizados para los servicios de contenedor de Amazon Lightsail.

El punto de enlace público de la implementación y el servicio de contenedor tienen los siguientes parámetros que puede especificar:

Punto final público de un servicio de contenedores en la consola de Lightsail
  • Contenedor de punto de enlace: seleccione el nombre del contenedor de la implementación que servirá como punto final enlace del servicio de contenedor. En el menú desplegable solo se enumeran los contenedores que tienen un puerto HTTP o HTTPS abierto en la implementación.

  • Puerto: seleccione el puerto HTTP o HTTPS que se va a utilizar para el punto de enlace público. En el menú desplegable solo se enumeran los puertos HTTP y HTTPS que están abiertos en el contenedor seleccionado. Seleccione un puerto HTTP si el contenedor seleccionado no está configurado para admitir una conexión HTTPS cuando se lance por primera vez.

    nota

    El dominio predeterminado para el servicio de contenedores utiliza HTTPS de forma predeterminada, incluso si elige un puerto HTTP como puerto de punto de enlace público. Esto se debe a que el balanceador de carga del servicio de contenedor está configurado para HTTPS de forma predeterminada, pero utiliza HTTP para establecer una conexión con los contenedores.

    El balanceador de carga del servicio de contenedor se conecta a sus contenedores mediante HTTP, pero sirve contenido a los usuarios mediante HTTPS.

  • Ruta de comprobación de estado: especifique una ruta en el contenedor de punto de enlace público seleccionado donde el balanceador de carga del servicio de contenedor comprobará periódicamente para asegurarse de que está en buen estado.

  • Advanced health check settings (Configuración avanzada de comprobaciones de estado). Puede configurar los siguientes valores de comprobación de estado del el contenedor de punto de conexión público seleccionado:

    • Health check timeout seconds (Tiempo de espera de comprobación de estado) en segundos: intervalo de tiempo en segundos que debe esperarse una respuesta. Si no se recibe ninguna respuesta durante este tiempo, la comprobación de estado fallará. Puede especificar de 2 a 60 segundos.

    • Health check timeout seconds (Tiempo de espera de comprobación de estado) en segundos: intervalo aproximado, en segundos, que transcurre entre comprobaciones de estado del contenedor. Puede especificar de 5 a 300 segundos.

    • Health check success codes (Códigos correctos de comprobación de estado): códigos HTTP a utilizar cuando se comprueba una respuesta correcta de un contenedor. Puede especificar valores de 200 a 499. Puede especificar varios valores (por ejemplo, 200, 202) o un intervalo de valores (por ejemplo, de 200 a 299).

    • Health check healthy threshold (Umbral de comprobación de estado saludable): número de comprobaciones de estado correctas consecutivas necesarias antes de que el contenedor pase a estado saludable.

    • Health check unhealthy threshold (Umbral de comprobación de estado no saludable): número de fallos consecutivos de comprobación de estado necesarios antes de que el contenedor pase a estado poco saludable.

Dominio privado

Todos los servicios de contenedores también tienen un dominio privado con el formato siguiente<ServiceName>.service.local, en el que < ServiceName > es el nombre del servicio de contenedores. Utilice el dominio privado para acceder al servicio de contenedor desde otro de sus recursos de Lightsail en la misma región de AWS que el servicio. El dominio privado es la única forma de acceder a su servicio de contenedor si no especifica un punto de enlace público en la implementación del servicio. Se genera un dominio predeterminado para el servicio de contenedores incluso si no especifica un punto de enlace público, pero mostrará un mensaje de error 404 No Such Service cuando intente navegar a él.

Para acceder a un contenedor específico mediante el dominio privado del servicio de contenedor, debe especificar el puerto abierto del contenedor que aceptará su solicitud de conexión. Para ello, debe formatear el dominio de su solicitud como<ServiceName>.service.local:<PortNumber>, en el que < ServiceName > es el nombre de su servicio de contenedor y < PortNumber > es el puerto abierto del contenedor al que desea conectarse. Por ejemplo, si crea una implementación en el servicio de contenedor llamada container-service-1, y especifica un contenedor Redis con el puerto 6379 abierto, entonces debe formatear el dominio de su solicitud como container-service-1.service.local:6379.

Comunicación entre contenedores

Mediante variables de entorno, es posible abrir comunicaciones entre contenedores del mismo servicio de contenedor, contenedores de distintos servicios de contenedor o entre un contenedor y otros recursos (por ejemplo, entre un contenedor y una base de datos administrada).

Para abrir la comunicación entre contenedores dentro del mismo servicio de contenedor, agregue una variable de entorno a la implementación de contenedores que haga referencia a localhost, como se muestra en el ejemplo a continuación.

Despliegue de contenedores con una variable de entorno localhost en la consola Lightsail

Para abrir la comunicación entre contenedores de distintos servicios de contenedor, agregue una variable de entorno a la implementación de contenedores que haga referencia al dominio privado (por ejemplo, container-service-1.service.local) como se muestra en el ejemplo a continuación.

Despliegue de contenedores con una variable de entorno de dominio privado en la consola de Lightsail

Para abrir la comunicación entre contenedores y otros recursos, agregue una variable de entorno a la implementación de contenedores que haga referencia a la URL del punto de conexión público del recurso. Por ejemplo, el punto final público de una base de datos gestionada por Lightsail suele ser. ls-123abc.czoexamplezqi.us-west-2.rds.amazonaws.com Por lo tanto, debe hacer referencia a ello en la variable de entorno, como se muestra en el ejemplo a continuación.

Despliegue de contenedores con una variable de entorno URL de punto final pública de recursos en la consola Lightsail

Registros de contenedor

Cada contenedor de la implementación genera un registro. Los registros de contenedor proporcionan las trasmisiones stdout y stderr de procesos que se ejecutan dentro del contenedor. Acceda a los registros de sus contenedores periódicamente para diagnosticar sus operaciones. Para obtener más información, consulte Visualización de los registros de contenedor de los servicios de contenedor de Amazon Lightsail.

Versiones de implementación

Cada implementación que cree en el servicio de contenedor se guarda como una versión de implementación. Si modifica los parámetros de una implementación existente, los contenedores se vuelven a implementar en el servicio y la implementación modificada da como resultado una nueva versión de implementación. Se guardan las 50 versiones de implementación más recientes para cada servicio de contenedor. Puede utilizar cualquiera de las 50 versiones de implementación para crear una nueva implementación en el mismo servicio de contenedor. Para obtener más información, consulte Visualización y administración de versiones de implementación de los servicios de contenedor de Amazon Lightsail.

Estado de la implementación

La implementación puede tener uno de los siguientes estados después de crearla:

  • Activating (En activación): la implementación se está activando y los contenedores se están creando.

  • Active (Activa): la implementación se creó correctamente y se está ejecutando actualmente en el servicio de contenedor.

  • Inactive (Inactiva): la implementación creada anteriormente con éxito ya no se ejecuta en el contenedor.

  • Failed (Error): error en la implementación porque no se pudo lanzar uno o varios de los contenedores especificados en la implementación.

Errores de implementación

La implementación produce un error si no se puede lanzar uno o varios contenedores de la implementación. Si la implementación produce un error y hay una implementación anterior ejecutándose en el servicio de contenedor, este mantiene la implementación anterior como la implementación activa. Si no hay ninguna implementación anterior, el servicio de contenedor permanece en estado listo sin ninguna implementación activa actualmente.

Consulte los registros de contenedor de la implementación con el error para diagnosticar y solucionar los problemas. Para obtener más información, consulte Visualización de los registros de los contenedor de los servicios de contenedor de Amazon Lightsail.

Visualización de la implementación actual del servicio de contenedor

Complete el procedimiento siguiente para ver los registros de la implementación actual de su servicio de contenedor de Lightsail.

  1. Inicie sesión en la consola de Lightsail.

  2. En la página de inicio de Lightsail, elija la pestaña Containers (Contenedores).

  3. Elija el nombre del servicio de contenedor para el que desea ver la implementación actual.

  4. En la página de administración del servicio de contenedor, elija la pestaña Deployments (Implementaciones).

    La página Deployments (Implementaciones) muestra la implementación actual y la versión de la implementación. Ambas secciones de la página están vacías si no ha creado una implementación en el servicio de contenedor.

Creación o modificación de la implementación del servicio de contenedor

Complete el procedimiento siguiente para crear o modificar una implementación del servicio de contenedor de Lightsail. Ya sea que cree una nueva implementación o modifique una existente, el servicio de contenedor guarda cada implementación como una nueva versión de implementación. Para obtener más información, consulte Visualización y administración de versiones de implementación de los servicios de contenedor de Amazon Lightsail.

  1. Inicie sesión en la consola de Lightsail.

  2. En la página de inicio de Lightsail, elija la pestaña Containers (Contenedores).

  3. Elija el nombre del servicio de contenedor para el que desea crear o modificar una implementación de servicio de contenedor.

  4. En la página de administración del servicio de contenedor, elija la pestaña Deployments (Implementaciones).

    En la página Deployments (Implementaciones) se muestra la implementación actual y la versión de la implementación, si la hay.

  5. Seleccione una de las siguientes opciones:

    • Si el servicio de contenedor tiene una implementación existente, elija Modify your deployment (Modificar la implementación).

    • Si el servicio de contenedor no tiene una implementación, elija Create a deployment (Crear una implementación).

      Se abre el formulario de implementación, donde puede editar los parámetros de implementación existentes o especificar nuevos parámetros de implementación.

      Formulario de despliegue del servicio de contenedores en la consola de Lightsail
  6. Ingrese los parámetros de la implementación. Para obtener más información acerca de los parámetros de implementación que puede especificar, consulte la sección Parámetros de implementación anteriormente en esta guía.

  7. Elija Add container entry (Agregar entrada de contenedor) para agregar más de una entrada de contenedor a la implementación. Puede tener hasta 10 entradas de contenedor en la implementación.

  8. Elija la entrada de contenedor en la implementación que servirá de punto de conexión público del servicio de contenedor. Esto incluye la especificación del puerto HTTP o HTTPS, la ruta de comprobación de estado en la entrada del contenedor seleccionada y la configuración avanzada de la comprobación de estado. Para obtener más información, consulte Parámetros públicos de punto de conexión más arriba en esta guía.

  9. Cuando haya acabado de ingresar los parámetros de la implementación, elija Save and deploy (Guardar e implementar) para crear la implementación en el servicio de contenedor.

    El estado del servicio de contenedor cambia a Deploying (Implementando) mientras se crea la implementación. Después de unos instantes, el estado del servicio de contenedor cambia a uno de los siguientes, en función del estado de la implementación:

    • Si la implementación se realiza correctamente, el estado del servicio de contenedor cambia a Running (En ejecución) y el estado de la implementación cambia a Active (Activa). Si configuró un punto de enlace público en la implementación, el contenedor elegido como punto de enlace público estará disponible a través del dominio predeterminado del servicio de contenedor.

    • Si la implementación produce un error y hay una implementación anterior ejecutándose en el servicio de contenedor, el estado del servicio de contenedor cambia a Running (En ejecución) y mantiene la implementación anterior como la implementación activa. Si no hay una implementación anterior, el estado del servicio de contenedor cambia a Ready (Listo) sin ninguna implementación activa actualmente. Consulte los registros de contenedor de la implementación con el error para diagnosticar y solucionar los problemas. Para obtener más información, consulte Visualización de los registros de los contenedor de los servicios de contenedor de Amazon Lightsail.