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.
Configuración del agente de contenedor de Amazon ECS
El agente de contenedor de Amazon ECS admite una serie de opciones de configuración, la mayoría de las cuales se deben establecer a través de variables de entorno. Están disponibles las siguientes variables de entorno y todas ellas son opcionales.
Si la instancia de contenedor se lanzó con la variante de Linux de la AMI optimizada para Amazon ECS, puede establecer estas variables de entorno en el archivo /etc/ecs/ecs.config
y, a continuación, reiniciar el agente. También puede escribir estas variables de configuración en sus instancias de contenedor con datos de usuario de Amazon EC2 en el momento del lanzamiento. Para obtener más información, consulte Proceso de arranque de instancias de contenedor con datos de usuario de Amazon EC2.
Si la instancia de contenedor se lanzó con una variante para Windows de la AMI optimizada para Amazon ECS, puede configurar estas variables de entorno con la PowerShell SetEnvironmentVariable comando y, a continuación, reinicie el agente. Para obtener más información, consulte Ejecutar comandos en la instancia de Windows durante el lanzamiento en la Guía del usuario de Amazon EC2 para instancias de Windows y Proceso de arranque de instancias de contenedor de Windows mediante datos de usuario de Amazon EC2.
Si está iniciando manualmente el agente de contenedor de Amazon ECS (para AMI no optimizadas para Amazon ECS), puede utilizar estas variables de entorno en el comando docker run que utiliza para iniciar el agente. Utilice estas variables con la sintaxis --env=
. En el caso de información confidencial, por ejemplo credenciales de autenticación para repositorios privados, debe almacenar las variables de entorno del agente en un archivo y transmitirlas a la vez con la opción VARIABLE_NAME
=VARIABLE_VALUE
--env-file
.path_to_env_file
Parámetros disponibles
Para obtener información sobre los parámetros de configuración del agente contenedor Amazon ECS disponibles, consulteAgente de contenedores de Amazon ECS
Almacenamiento de la configuración de instancia de contenedor en Amazon S3
La configuración del agente de contenedor de Amazon ECS se controla mediante las variables de entorno descritas en la sección anterior. Las variantes de Linux de la AMI optimizada para Amazon ECS buscan estas variables en /etc/ecs/ecs.config
cuando se inicia el agente de contenedor y el agente se configura en consecuencia. Ciertas variables de entorno inocuas, como ECS_CLUSTER
, se pueden transmitir a la instancia de contenedor durante el lanzamiento a través de datos de usuario de Amazon EC2 y se pueden escribir en este archivo sin ninguna consecuencia. No obstante, otro tipo de información confidencial, como las credenciales de AWS o la variable ECS_ENGINE_AUTH_DATA
, no deben pasarse nunca a una instancia en los datos de usuario ni escribirse en /etc/ecs/ecs.config
de manera que les permita aparecer en un archivo .bash_history
.
El almacenamiento de la información de configuración en un bucket privado de Amazon S3 y la concesión de acceso de solo lectura al rol de IAM de instancia de contenedor es una forma práctica y segura de permitir la configuración de instancia de contenedor en el momento del lanzamiento. Puede almacenar una copia del archivo ecs.config
en un bucket privado. Puede utilizar los datos de usuario de Amazon EC2 para instalar la AWS CLI y copiar la información de configuración en /etc/ecs/ecs.config
cuando se lance la instancia.
Para permitir acceso de solo lectura de Amazon S3 para su rol de instancia de contenedor
Abra la consola de IAM en https://console.aws.amazon.com/iam/
. -
En el panel de navegación, elija Roles y seleccione el rol de IAM que se va a utilizar para las instancias de contenedor. Este rol probablemente se denomina
ecsInstanceRole
. Para obtener más información, consulte Rol de IAM de instancia de contenedor de Amazon ECS. -
En Managed Policies, seleccione Attach Policy.
-
En la página Attach Policy (Asociar política), escriba
S3
en Filter (Filtro) para reducir los resultados de políticas. -
Selecciona la casilla situada a la izquierda delAmazon S3ReadOnlyAccesspolítica y eligeAdjunte la política.
Para almacenar un archivo ecs.config
en Amazon S3
-
Crea un
ecs.config
archivo con variables de configuración del agente Amazon ECS válidas con el siguiente formato. En este ejemplo, se configura la autenticación de registros privados. Para obtener más información, consulte Autenticación de registros privados para tareas.ECS_ENGINE_AUTH_TYPE=dockercfg ECS_ENGINE_AUTH_DATA={"https://index.docker.io/v1/":{"auth":"
zq212MzEXAMPLE7o6T25Dk0i
","email":"email@example.com
"}}nota
Para obtener una lista completa de las variables de configuración del agente de Amazon ECS disponibles, consulteAgente de contenedores de Amazon ECS
en GitHub. -
Para almacenar el archivo de configuración, cree un bucket privado en Amazon S3. Para obtener más información, consulte Create a Bucket (Creación de un bucket) en la Guía del usuario de Amazon Simple Storage Service.
-
Cargue el archivo
ecs.config
en el bucket de S3. Para obtener más información, consulte Add an Object to a Bucket (Adición de un objeto a un bucket) en la Guía del usuario de Amazon Simple Storage Service.
Para cargar un archivo ecs.config
desde Amazon S3 en el momento del lanzamiento
-
Complete los procedimientos indicados anteriormente en esta sección para permitir el acceso de solo lectura de Amazon S3 a las instancias de contenedor y almacenar un archivo
ecs.config
en un bucket de S3 privado. -
Lance nuevas instancias de contenedor siguiendo los pasos que se indican en Lanzamiento de una instancia de contenedor de Linux de Amazon ECS. En Paso 7, utilice el siguiente script de ejemplo que instala la AWS CLI y copia el archivo de configuración en
/etc/ecs/ecs.config
.#!/bin/bash yum install -y aws-cli aws s3 cp s3://
your_bucket_name
/ecs.config /etc/ecs/ecs.config