Especificación de un montaje de unión en la definición de tareas de Amazon ECS - Amazon Elastic Container Service

Especificación de un montaje de unión en la definición de tareas de Amazon ECS

En el siguiente fragmento de JSON de definición de tareas, se muestra la sintaxis de los objetos volumes, mountPoints y ephemeralStorage para una definición de las tareas de Amazon ECS alojadas en instancias de Amazon EC2 o Fargate.

{ "family": "", ... "containerDefinitions" : [ { "mountPoints" : [ { "containerPath" : "/path/to/mount_volume", "sourceVolume" : "string" } ], "name" : "string" } ], ... "volumes" : [ { "name" : "string" } ], "ephemeralStorage": { "sizeInGiB": integer } }

Para las tareas de Amazon ECS que están alojadas en instancias de Amazon EC2, puede utilizar el parámetro host opcional y un sourcePath al especificar los detalles del volumen de tareas. Cuando se especifica, vincula el montaje de enlace al ciclo de vida de la tarea en lugar del contenedor.

"volumes" : [ { "host" : { "sourcePath" : "string" }, "name" : "string" } ]

A continuación, se describe en más detalle cada uno de los parámetros de la definición de tarea.

name

Tipo: cadena

Requerido: no

El nombre del volumen. Se admiten hasta 255 letras (mayúsculas y minúsculas), números, guiones (-) y caracteres de subrayado (_). Se hace referencia a este nombre en el parámetro sourceVolume del objeto mountPoints de la definición de contenedor.

host

Obligatorio: no

El parámetro host se utiliza para vincular el ciclo de vida del montaje de enlace a la instancia de Amazon EC2 del host, en lugar de a la tarea, y donde se almacena. Si el parámetro host está vacío, entonces el daemon de Docker asigna una ruta de host a su volumen de datos, pero no se garantiza que los datos persistan después de que los contenedores asociados dejen de funcionar.

Los contenedores de Windows pueden montar directorios completos en la misma unidad que $env:ProgramData.

nota

El parámetro sourcePath se admite solo cuando se utilizan las tareas que se alojan en instancias de Amazon EC2.

sourcePath

Tipo: cadena

Requerido: no

Cuando utilice el parámetro host, especifique una sourcePath para declarar la ruta de la instancia de Amazon EC2 del host que se presenta al contenedor. Si este parámetro está vacío, el daemon de Docker asigna una ruta de host. Si el parámetro host contiene una ubicación de archivos sourcePath, el volumen de datos persiste en la ubicación especificada en la instancia de Amazon EC2 del host hasta que la elimine manualmente. Si el valor sourcePath no existe en la instancia de Amazon EC2 del host, el daemon de Docker lo crea. Si la ubicación existe, el contenido de la carpeta de la ruta de origen se exporta.

mountPoints

Tipo: matriz de objetos

Obligatorio: no

Puntos de montaje para los volúmenes de datos del contenedor. Este parámetro asigna a Volumes en la API create-container de Docker y la opción --volume a docker run.

Los contenedores de Windows pueden montar directorios completos en la misma unidad que $env:ProgramData. Los contenedores de Windows no pueden montar directorios en una unidad diferente y los puntos de montaje no se pueden utilizar entre unidades. Debe especificar los puntos de montaje para adjuntar un volumen de Amazon EBS directamente a una tarea de Amazon ECS.

sourceVolume

Tipo: cadena

Obligatorio: sí, si se utilizan mountPoints.

El nombre del volumen a montar.

containerPath

Tipo: cadena

Obligatorio: sí, si se utilizan mountPoints.

La ruta del contenedor donde se montará el volumen.

readOnly

Tipo: Booleano

Obligatorio: no

Si este valor es true, el acceso del contenedor al volumen es de solo lectura. Si este valor es false, el contenedor puede escribir en el volumen. El valor predeterminado es false.

Para las tareas que se ejecutan en instancias de EC2 con sistema operativo Windows, deje el valor predeterminado false.

ephemeralStorage

Tipo: objeto

Obligatorio: no

Cantidad de almacenamiento efímero que se asignará a la tarea. Este parámetro se utiliza para expandir la cantidad total de almacenamiento efímero disponible, más allá de la cantidad predeterminada, para las tareas alojadas en AWS Fargate que utilizan la versión 1.4.0 o posterior (Linux) o 1.0.0 o posterior (Windows) de la plataforma.

Se puede utilizar la CLI de Copilot, CloudFormation, el SDK de AWS o la CLI para especificar almacenamiento efímero para un montaje de enlace.