Report de la configuration du volume au moment du lancement dans une définition de tâche Amazon ECS - Amazon Elastic Container Service

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Report de la configuration du volume au moment du lancement dans une définition de tâche Amazon ECS

Pour configurer un volume Amazon EBS à rattacher à votre tâche, vous devez spécifier la configuration du point de montage dans la définition de tâche et nommer le volume. Vous devez également définir configuredAtLaunch sur true, car les volumes Amazon EBS ne peuvent pas être configurés pour être attaché dans la définition de tâche. Au lieu de cela, les volumes Amazon EBS sont configurés pour être attachés lors du déploiement.

Pour enregistrer la définition de tâche à l'aide de AWS Command Line Interface (AWS CLI), enregistrez le modèle sous forme de fichier JSON, puis transmettez-le comme entrée pour la register-task-definition commande.

Pour créer et enregistrer une définition de tâche à l'aide du AWS Management Console, voirCréation d’une définition de tâche Amazon ECS à l’aide de la console.

La définition de tâche suivante montre la syntaxe des objets mountPoints et volumes dans la définition de tâche. Pour plus d’informations sur les paramètres de définition des tâches, consultez la section Paramètres de définition de tâche Amazon ECS pour Fargate. Pour utiliser cet exemple, remplacez user input placeholders par vos propres informations.

{ "family": "mytaskdef", "containerDefinitions": [ { "name": "nginx", "image": "public.ecr.aws/nginx/nginx:latest", "networkMode": "awsvpc", "portMappings": [ { "name": "nginx-80-tcp", "containerPort": 80, "hostPort": 80, "protocol": "tcp", "appProtocol": "http" } ], "mountPoints": [ { "sourceVolume": "myEBSVolume", "containerPath": "/mount/ebs", "readOnly": true } ] } ], "volumes": [ { "name": "myEBSVolume", "configuredAtLaunch": true } ], "requiresCompatibilities": [ "FARGATE", "EC2" ], "cpu": "1024", "memory": "3072", "networkMode": "awsvpc" }
{ "family": "mytaskdef", "memory": "4096", "cpu": "2048", "family": "windows-simple-iis-2019-core", "executionRoleArn": "arn:aws:iam::012345678910:role/ecsTaskExecutionRole", "runtimePlatform": {"operatingSystemFamily": "WINDOWS_SERVER_2019_CORE"}, "requiresCompatibilities": ["EC2"] "containerDefinitions": [ { "command": ["New-Item -Path C:\\inetpub\\wwwroot\\index.html -Type file -Value '<html> <head> <title>Amazon ECS Sample App</title> <style>body {margin-top: 40px; background-color: #333;} </style> </head><body> <div style=color:white;text-align:center> <h1>Amazon ECS Sample App</h1> <h2>Congratulations!</h2> <p>Your application is now running on a container in Amazon ECS.</p>'; C:\\ServiceMonitor.exe w3svc"], "entryPoint": [ "powershell", "-Command" ], "essential": true, "cpu": 2048, "memory": 4096, "image": "mcr.microsoft.com/windows/servercore/iis:windowsservercore-ltsc2019", "name": "sample_windows_app", "portMappings": [ { "hostPort": 443, "containerPort": 80, "protocol": "tcp" } ], "mountPoints": [ { "sourceVolume": "myEBSVolume", "containerPath": "drive:\ebs", "readOnly": true } ] } ], "volumes": [ { "name": "myEBSVolume", "configuredAtLaunch": true } ], "requiresCompatibilities": [ "FARGATE", "EC2" ], "cpu": "1024", "memory": "3072", "networkMode": "awsvpc" }
mountPoints

Type : tableau d'objets

Obligatoire : non

Les points de montage pour les volumes de données dans votre conteneur. Ce paramètre correspond à Volumes dans l’API Docker create-container et à l’option --volume de docker run.

Les conteneurs Windows peuvent monter des répertoires entiers sur le même lecteur que $env:ProgramData. Les conteneurs Windows ne peuvent pas monter de répertoires sur un autre lecteur, et les points de montage ne peuvent pas être utilisés sur plusieurs lecteurs. Vous devez spécifier des points de montage pour associer un volume Amazon EBS directement à une tâche Amazon ECS.

sourceVolume

Type : String

Obligatoire : oui, lorsque des objets mountPoints sont utilisés

Nom du volume à monter.

containerPath

Type : String

Obligatoire : oui, lorsque des objets mountPoints sont utilisés

Le chemin dans le conteneur où le volume sera monté.

readOnly

Type : booléen

Obligatoire : non

Si cette valeur est true, le conteneur ne peut accéder au volume qu'en lecture. Si cette valeur est false, le conteneur peut écrire sur le volume. La valeur par défaut est false.

Pour les tâches exécutées sur EC2 des instances exécutant le système d'exploitation Windows, laissez la valeur par défaut defalse.

name

Type : chaîne

Obligatoire : non

Nom du volume. Jusqu’à 255 lettres (majuscules et minuscules), chiffres, traits d’union (-) et traits de soulignement (_) sont autorisés. Ce nom est référencé dans le paramètre sourceVolume de l’objet mountPoints de définition du conteneur.

configuredAtLaunch

Type : booléen

Obligatoire : oui, lorsque vous souhaitez attacher un volume EBS directement à une tâche.

Spécifie si un volume est configurable au lancement. Lorsque ce paramètre est défini sur true, vous pouvez configurer le volume lorsque vous exécutez une tâche autonome, ou lorsque vous créez ou mettez à jour un service. Lorsque cette option est définie sur false, vous ne pourrez pas fournir d’autre configuration de volume dans la définition de tâche. Ce paramètre doit être fourni et défini sur true pour configurer un volume Amazon EBS à rattacher à une tâche.