

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.

# Paramètres de définition des tâches pour ContainerProperties
<a name="job_definition_parameters"></a>

Les définitions de poste utilisées [`ContainerProperties`](https://docs.aws.amazon.com/batch/latest/APIReference/API_ContainerProperties.html) sont divisées en plusieurs parties :
+ Le nom de la définition du poste
+ Le type de définition du poste
+ L'espace réservé pour la substitution de paramètres est défini par défaut
+ Les propriétés du conteneur pour la tâche
+ Les propriétés Amazon EKS pour la définition de tâche qui sont nécessaires pour les tâches exécutées sur les ressources Amazon EKS
+ Les propriétés de nœud nécessaires pour une tâche parallèle à plusieurs nœuds
+ Les fonctionnalités de la plateforme nécessaires aux tâches exécutées sur les ressources de Fargate
+ Les détails de propagation des balises par défaut de la définition de tâche
+ La stratégie de nouvelle tentative par défaut pour la définition de tâche
+ Priorité de planification par défaut pour la définition de tâche
+ Les balises par défaut pour la définition du poste
+ Le délai d'expiration par défaut pour la définition de tâche

**Contents**
+ [Nom de la définition du poste](#jobDefinitionName)
+ [Type](#type)
+ [Parameters](#parameters)
+ [Propriétés du conteneur](#containerProperties)
+ [Propriétés d'Amazon EKS](#job-definition-parameters-eks-properties)
+ [Fonctionnalités de la plateforme](#job-definition-parameters-platform-capabilities)
+ [Propager les balises](#job-definition-parameters-propagate-tags)
+ [Propriétés du nœud](#nodeProperties)
+ [Stratégie de nouvelle tentative](#retryStrategy)
+ [Priorité de planification](#job-definition-parameters-schedulingPriority)
+ [Étiquettes](#job-definition-parameters-tags)
+ [Timeout](#timeout)

## Nom de la définition du poste
<a name="jobDefinitionName"></a>

`jobDefinitionName`  
Lorsque vous enregistrez une définition de tâche, vous indiquez un nom. Le nom peut comporter jusqu'à 128 caractères. Il peut contenir des lettres majuscules et minuscules, des chiffres, des traits d'union (-) et des traits de soulignement (\_). La première définition de poste enregistrée sous ce nom reçoit une révision de 1. Toutes les définitions de tâches enregistrées avec ce nom par la suite se voient attribuer un numéro de révision incrémentiel.   
Type : chaîne  
Obligatoire : oui

## Type
<a name="type"></a>

`type`  
Lorsque vous enregistrez une définition de tâche, vous indiquez le type de tâche. Si la tâche s'exécute sur les ressources Fargate ou Amazon ECS Managed Instances, elle `multinode` n'est pas prise en charge. Pour plus d'informations sur les tâches parallèles à plusieurs nœuds, consultez [Création d'une définition de tâche parallèle à nœuds multiples](create-multi-node-job-def.md).  
Type : String  
Valeurs valides : `container` \| `multinode`  
Obligatoire : oui

## Parameters
<a name="parameters"></a>

`parameters`  
Lorsque vous soumettez une tâche, vous pouvez spécifier des paramètres qui remplacent les espaces réservés ou remplacent les paramètres de définition de tâche par défaut. Les paramètres de demandes de soumission de tâche prévalent sur les valeurs par défaut dans une définition de tâche. Cela signifie que vous pouvez utiliser la même définition de tâche pour plusieurs tâches utilisant le même format. Vous pouvez également modifier les valeurs de la commande par programmation au moment de la soumission.  
Type : mappage chaîne/chaîne  
Obligatoire : non  
Lorsque vous enregistrez une définition de tâche, vous pouvez utiliser les espaces réservés de substitution de paramètres dans le champ `command` des propriétés de conteneur de la tâche. La syntaxe est la suivante.  

```
"command": [
    "ffmpeg",
    "-i",
    "{{Ref::inputfile}}",
    "-c",
    "{{Ref::codec}}",
    "-o",
    "{{Ref::outputfile}}"
]
```
Dans l'exemple ci-dessus, aucun espace réservé de substitution de paramètre `{{Ref::inputfile}}`, `{{Ref::codec}}` et `{{Ref::outputfile}}` n'est présent dans la commande. Vous pouvez utiliser l'`parameters`objet de la définition de tâche pour définir des valeurs par défaut pour ces espaces réservés. Par exemple, pour définir une valeur par défaut pour l'espace réservé `{{Ref::codec}}`, vous précisez les éléments suivants dans la définition de tâche :  

```
"parameters" : {"codec" : "mp4"}
```
Lorsque cette définition de tâche est soumise pour exécution, l'`{{Ref::codec}}`argument de la commande pour le conteneur est remplacé par la valeur par défaut,`mp4`.

## Propriétés du conteneur
<a name="containerProperties"></a>

Lorsque vous enregistrez une définition de tâche, spécifiez une liste de propriétés de conteneur qui sont transmises au démon Docker sur une instance de conteneur lorsque la tâche est placée. Les propriétés de conteneurs suivantes sont autorisées dans une définition de tâche. Pour les tâches à nœud unique, ces propriétés de conteneur sont définies au niveau de la définition de tâche. Pour les tâches parallèles à plusieurs nœuds, les propriétés de conteneur sont définies au niveau [Propriétés du nœud](#nodeProperties), pour chaque groupe de nœuds.

`command`  
La commande transmise au conteneur. Ce paramètre correspond à `Cmd` dans la section [Create a container (Création d'un conteneur)](https://docs.docker.com/engine/api/v1.38/#operation/ContainerCreate) de [Docker Remote API (API distante Docker)](https://docs.docker.com/engine/api/v1.38/) et au paramètre `COMMAND` de [**docker run**](https://docs.docker.com/engine/reference/commandline/run/). Pour plus d'informations sur le `CMD` paramètre Docker, consultez [ https://docs.docker.com/engine/reference/builder/ \#cmd](https://docs.docker.com/engine/reference/builder/#cmd).  

```
"command": ["{{string}}", ...]
```
Type : tableau de chaînes  
Obligatoire : non

`environment`  
Variables d'environnement à transmettre à un conteneur. Ce paramètre correspond à `Env` dans la section [Create a container](https://docs.docker.com/engine/api/v1.38/#operation/ContainerCreate) (Créer un conteneur) de l'[API Docker à distance](https://docs.docker.com/engine/api/v1.38/) et l'option `--env` correspond à [**docker run**](https://docs.docker.com/engine/reference/commandline/run/).  
Nous vous déconseillons d'utiliser des variables d'environnement en texte clair pour les informations sensibles, comme les données d'informations d'identification.
Les variables d'environnement ne doivent pas commencer par`AWS_BATCH`. Cette convention de dénomination est réservée aux variables définies par le AWS Batch service.
Type : tableau de paires clé-valeur  
Obligatoire : non    
`name`  
Nom de la variable d'environnement.  
Type : String  
Obligatoire : oui lorsque `environment` est utilisé.  
`value`  
Valeur de la variable d'environnement.  
Type : String  
Obligatoire : oui lorsque `environment` est utilisé.

```
"environment" : [
    { "name" : "{{envName1}}", "value" : "{{envValue1}}" },
    { "name" : "{{envName2}}", "value" : "{{envValue2}}" }
]
```

`executionRoleArn`  
Lorsque vous enregistrez une définition de tâche, vous pouvez spécifier un rôle IAM. Le rôle confère à l'agent de conteneur Amazon ECS les autorisations nécessaires pour appeler en votre nom les actions d'API spécifiées dans ses politiques associées. Les tâches exécutées sur les ressources Fargate doivent fournir un rôle d'exécution. Pour plus d’informations, consultez [AWS Batch Rôle d'exécution IAM](execution-IAM-role.md).  
Type : chaîne  
Obligatoire : non

`fargatePlatformConfiguration`  
Configuration de la plate-forme pour les tâches exécutées sur les ressources Fargate. Les tâches exécutées sur des ressources EC2 ne doivent pas spécifier ce paramètre.  
Type : objet [FargatePlatformConfiguration](https://docs.aws.amazon.com/batch/latest/APIReference/API_FargatePlatformConfiguration.html)  
Obligatoire : non    
`platformVersion`  
La version de la plateforme AWS Fargate utilisée pour les jobs, ou `LATEST` pour utiliser une version récente et approuvée de la plateforme AWS Fargate.  
Type : String  
Par défaut: `LATEST`  
Obligatoire : non

`image`  
L'image utilisée pour démarrer une tâche. Cette chaîne est transmise directement au démon Docker. Les images du registre Docker Hub sont disponibles par défaut. Vous pouvez également spécifier d'autres référentiels avec `{{repository-url}}/{{image}}:{{tag}}`. Il peut comporter jusqu'à 255 lettres (majuscules et minuscules), des chiffres, des tirets, des traits de soulignement, deux points, des points, des barres obliques et des signes dièse. Ce paramètre se mappe à `Image` dans la section [Create a container](https://docs.docker.com/engine/api/v1.38/#operation/ContainerCreate) (Création d'un conteneur) de [Docker Remote API](https://docs.docker.com/engine/api/v1.38/) (L'API Docker à distance) et le paramètre `IMAGE` de [**docker run**](https://docs.docker.com/engine/reference/commandline/run/).  
L'architecture des images Docker doit correspondre à l'architecture du processeur des ressources de calcul sur lesquelles elles sont planifiées. Par exemple, les images ARM-based Docker ne peuvent être exécutées que sur des ressources de ARM-based calcul.
+ Les images des référentiels publics Amazon ECR utilisent les conventions complètes `registry/repository[:tag]` ou de `registry/repository[@digest]` dénomination (par exemple,`public.ecr.aws/{{registry_alias}}/{{my-web-app}}:{{latest}}`).
+ Les images des référentiels Amazon ECR utilisent la convention de `registry/repository:[tag]` dénomination complète. Par exemple : `{{aws_account_id}}.dkr.ecr.{{region}}.amazonaws.com``/{{my-web-app}}:{{latest}}`.
+ Les images dans les référentiels officiels sur Docker Hub utilisent un nom unique (par exemple, `ubuntu` ou `mongo`).
+ Les images dans les autres référentiels sur Docker Hub sont qualifiées par un nom d'organisation (par exemple, `amazon/amazon-ecs-agent`).
+ Les images dans les autres référentiels en ligne sont qualifiées par un nom de domaine (par exemple, `quay.io/assemblyline/ubuntu`).
Type : chaîne  
Obligatoire : oui

`instanceType`  
Type d'instance à utiliser pour une tâche parallèle à plusieurs nœuds. Tous les groupes de nœuds dans une tâche parallèle à plusieurs nœuds doivent utiliser le même type d'instance. Ce paramètre n'est pas valide pour les tâches de conteneur à nœud unique ou pour les tâches exécutées sur les ressources Fargate.  
Type : chaîne  
Obligatoire : non

`jobRoleArn`  
Lorsque vous enregistrez une définition de tâche, vous pouvez spécifier un rôle IAM. Le rôle autorise le conteneur de tâches à appeler les actions d'API qui sont spécifiées dans ses stratégies associées à votre place. Pour plus d’informations, consultez [Rôles IAM pour les tâches](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-iam-roles.html) dans le *Guide du développeur Amazon Elastic Container Service*.  
Type : chaîne  
Obligatoire : non

`linuxParameters`  
Linux-specific les modifications appliquées au conteneur, telles que les détails des mappages de périphériques.  

```
"linuxParameters": {
    "devices": [
        {
            "hostPath": "{{string}}",
            "containerPath": "{{string}}",
            "permissions": [
                "READ", "WRITE", "MKNOD"
            ]
        }
    ],
    "initProcessEnabled": {{true|false}},
    "sharedMemorySize": 0,
    "tmpfs": [
        {
            "containerPath": "{{string}}",
            "size": {{integer}},
            "mountOptions": [
                "{{string}}"
            ]
        }
    ],
    "maxSwap": {{integer}},
    "swappiness": {{integer}}
}
```
Type : objet [LinuxParameters](https://docs.aws.amazon.com/batch/latest/APIReference/API_LinuxParameters.html)  
Obligatoire : non    
`devices`  
Liste des appareils mappés au conteneur. Ce paramètre correspond à `Devices` dans la section [Create a container](https://docs.docker.com/engine/api/v1.38/#operation/ContainerCreate) (Créer un conteneur) de [Docker Remote API](https://docs.docker.com/engine/api/v1.38/) et l'option `--device` à la commande [docker run](https://docs.docker.com/engine/reference/run/).  
Ce paramètre ne s'applique pas aux tâches exécutées sur les ressources Fargate.
Type : tableau d'objets [Périphérique](https://docs.aws.amazon.com/batch/latest/APIReference/API_Device.html)  
Obligatoire : non    
`hostPath`  
Chemin où se trouve le périphérique disponible dans l'instance de conteneur hôte.  
Type : chaîne  
Obligatoire : oui  
`containerPath`  
Le chemin par lequel l'appareil est exposé dans le conteneur est. Si cela n'est pas spécifié, le périphérique est exposé sur le même chemin que le chemin hôte.  
Type : chaîne  
Obligatoire : non  
`permissions`  
Autorisations pour l'appareil dans le conteneur. Si cela n'est pas spécifié, les autorisations sont définies sur `READ``WRITE`, et`MKNOD`.  
Type : tableau de chaînes  
Obligatoire : non  
Valeurs valides : `READ` \| `WRITE` \| `MKNOD`  
`initProcessEnabled`  
Si ce paramètre est défini sur « true », exécutez un processus `init` dans le conteneur afin de transmettre des signaux et de récolter les processus. Ce paramètre est mappé à l'option `--init` de [docker run](https://docs.docker.com/engine/reference/run/). Ce paramètre nécessite la version 1.25 de l'API Docker à distance ou une version supérieure sur votre instance de conteneur. Pour vérifier la version de l'API Docker à distance de votre instance de conteneur, connectez-vous à votre instance de conteneur et exécutez la commande suivante : `sudo docker version | grep "Server API version"`  
Type : booléen  
Obligatoire : non  
`maxSwap`  
Quantité totale de mémoire d'échange (en MiB) qu'une tâche peut utiliser. Ce paramètre est converti en l'option `--memory-swap` de la commande [docker run](https://docs.docker.com/engine/reference/run/), où la valeur est la somme de la mémoire du conteneur plus la valeur `maxSwap`. Pour plus d'informations, veuillez consulter les [détails de `--memory-swap`](https://docs.docker.com/config/containers/resource_constraints/#--memory-swap-details) de la documentation Docker.  
Si la valeur `0` est spécifiée pour `maxSwap`, le conteneur n'utilise pas l'échange. Les valeurs acceptées sont `0` ou n'importe quel nombre entier positif. Si le `maxSwap` paramètre est omis, le conteneur utilise la configuration d'échange pour l'instance de conteneur sur laquelle il s'exécute. Une valeur `maxSwap` doit être définie pour que le paramètre `swappiness` soit utilisé.  
Ce paramètre ne s'applique pas aux tâches exécutées sur les ressources Fargate.
Type : Integer  
Obligatoire : non  
`sharedMemorySize`  
Valeur correspondant à la taille (en Mio) du volume `/dev/shm`. Ce paramètre est mappé à l'option `--shm-size` de [docker run](https://docs.docker.com/engine/reference/run/).  
Ce paramètre ne s'applique pas aux tâches exécutées sur les ressources Fargate.
Type : Integer  
Obligatoire : non  
`swappiness`  
Vous pouvez utiliser ce paramètre pour régler le comportement d'échange de mémoire d'un conteneur. Une `swappiness` valeur indiquant que l'`0`échange n'a pas lieu sauf en cas d'absolue nécessité. Avec la valeur `swappiness` pour `100`, l'échange de pages a lieu de manière agressive. Les valeurs acceptées sont les nombres entiers compris entre `0` et `100`. Si le paramètre `swappiness` n'est pas spécifié, la valeur par défaut `60` est utilisée. Si aucune valeur n'est spécifiée pour `maxSwap`, le paramètre est ignoré. Si `maxSwap` est défini sur 0, le conteneur n'a pas recours à l'échange. Ce paramètre est mappé à l'option `--memory-swappiness` de [docker run](https://docs.docker.com/engine/reference/run/).  
Tenez compte des points suivants lorsque vous utilisez une configuration d'échange par conteneur.  
+ L'espace d'échange doit être activé et alloué sur l'instance de conteneur pour que les conteneurs puissent l'utiliser.
**Note**  
L'échange n'est pas activé par défaut pour les AMI optimisées Amazon ECS. Vous devez activer l'échange sur l'instance pour utiliser cette fonction. Pour plus d'informations, consultez [ Instance Store Swap Volumes ](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-store-swap-volumes.html) dans le guide de l'utilisateur * Amazon EC2 * ou [ Comment allouer de la mémoire pour qu'elle fonctionne comme espace d'échange dans une instance Amazon EC2 à l'aide d'un fichier d'échange ? ](https://aws.amazon.com/premiumsupport/knowledge-center/ec2-memory-swap-file/).
+ Les paramètres de l'espace d'échange sont uniquement pris en charge pour les définitions de tâches utilisant des ressources EC2.
+ Si les paramètres `maxSwap` et `swappiness` sont omis d'une définition de tâche, chaque conteneur a une valeur `swappiness` par défaut de 60. L'utilisation totale du swap est limitée à deux fois la réserve de mémoire du conteneur.
Ce paramètre ne s'applique pas aux tâches exécutées sur les ressources Fargate.
Type : Integer  
Obligatoire : non  
`tmpfs`  
Chemin du conteneur, options de montage et taille du montage tmpfs.  
Type : tableau d'objets [Tmpfs](https://docs.aws.amazon.com/batch/latest/APIReference/API_Tmpfs.html)  
Ce paramètre ne s'applique pas aux tâches exécutées sur les ressources Fargate.
Obligatoire : non    
`containerPath`  
Chemin d'accès absolu du fichier dans le conteneur où le volume tmpfs est monté.  
Type : chaîne  
Obligatoire : oui  
`mountOptions`  
Liste des options de montage du volume tmpfs.  
Valeurs valides : `defaults` "" \| `ro` "" \| `rw` "" \| `suid` "`nosuid`" \| "`dev`" \| "`nodev`" \| "`exec`" \| `noexec` "" \| `sync` "" \| `async` "" \| `dirsync` "`remount`" \| "\|`mand`" "\|`nomand`" \| `atime` "\|`noatime`" \| `diratime` "\|" \| `nodiratime` "\|`bind`" \| `rbind` "\|" \| `unbindable` "\|`runbindable`" \| `private` "\|" \| `rprivate` "\|`shared`" \| `rshared` "\|" \| `slave` "\|`rslave`" \| `relatime` "\|" \| `norelatime` `strictatime` "» \| « `nostrictatime` \| » \| `mode`« \| `uid` « » \| `gid` « » \| `nr_inodes` « `nr_blocks` » \| « `mpol` »  
Type : tableau de chaînes  
Obligatoire : non  
`size`  
Taille (en Mio) du volume tmpfs.  
Type : Integer  
Obligatoire : oui

`logConfiguration`  
La spécification de configuration du journal pour la tâche.  
Ce paramètre correspond à `LogConfig` dans la section [Create a container](https://docs.docker.com/engine/api/v1.38/#operation/ContainerCreate) (Créer un conteneur) de [Docker Remote API](https://docs.docker.com/engine/api/v1.38/) et l'option `--log-driver` à la commande [docker run](https://docs.docker.com/engine/reference/run/). Par défaut, les conteneurs utilisent le même pilote de journalisation que celui utilisé par le démon Docker. Cependant, le conteneur peut utiliser un pilote de journalisation différent de celui du démon Docker en spécifiant un pilote de journalisation avec ce paramètre dans la définition du conteneur. Pour utiliser un pilote de journalisation différent pour un conteneur, le système de journalisation doit être configuré sur l'instance du conteneur ou sur un autre serveur de journalisation afin de fournir des options de journalisation à distance. Pour plus d'informations sur les options relatives aux différents pilotes du journal pris en charge, consultez la section [Configure logging drivers](https://docs.docker.com/engine/admin/logging/overview/) (Configurer les pilotes de journalisation) dans la documentation Docker.  
AWS Batch prend actuellement en charge un sous-ensemble des pilotes de journalisation disponibles pour le démon Docker (indiqués dans le type de [ LogConfiguration ](https://docs.aws.amazon.com/batch/latest/APIReference/API_LogConfiguration.html) données).
Ce paramètre nécessite la version 1.18 de l'API Docker Remote ou une version ultérieure sur votre instance de conteneur. Pour vérifier la version de l'API Docker à distance de votre instance de conteneur, connectez-vous à votre instance de conteneur et exécutez la commande suivante : `sudo docker version | grep "Server API version"`   

```
"logConfiguration": {
    "devices": [
        {
            "logDriver": "{{string}}",
            "options": {
                "{{optionName1}}" : "{{optionValue1}}",
                "{{optionName2}}" : "{{optionValue2}}"
            }
            "secretOptions": [
              {
                  "name" : "{{secretOptionName1}}",
                  "valueFrom" : "{{secretOptionArn1}}"
              },
              {
                  "name" : "{{secretOptionName2}}",
                  "valueFrom" : "{{secretOptionArn2}}"
              }
            ]
        }
    ]
}
```
Type : objet [LogConfiguration](https://docs.aws.amazon.com/batch/latest/APIReference/API_LogConfiguration.html)  
Obligatoire : non    
`logDriver`  
Le pilote de journal à utiliser pour la tâche. Par défaut, AWS Batch active le pilote de `awslogs` journalisation. Les valeurs valides répertoriées pour ce paramètre sont les pilotes de journal avec lesquels l'agent de conteneur Amazon ECS peut communiquer par défaut.  
Ce paramètre correspond à `LogConfig` dans la section [Create a container](https://docs.docker.com/engine/api/v1.38/#operation/ContainerCreate) (Créer un conteneur) de [Docker Remote API](https://docs.docker.com/engine/api/v1.38/) et l'option `--log-driver` à la commande [docker run](https://docs.docker.com/engine/reference/run/). Par défaut, les jobs utilisent le même pilote de journalisation que celui utilisé par le démon Docker. Toutefois, la tâche peut utiliser un pilote de journalisation différent de celui du démon Docker en spécifiant un pilote de journalisation avec ce paramètre dans la définition de la tâche. Si vous souhaitez spécifier un autre pilote de journalisation pour une tâche, le système de journalisation doit être configuré sur l'instance de conteneur de l'environnement informatique. Vous pouvez également le configurer sur un autre serveur de journalisation pour fournir des options de journalisation à distance. Pour plus d'informations sur les options relatives aux différents pilotes du journal pris en charge, consultez la section [Configure logging drivers](https://docs.docker.com/engine/admin/logging/overview/) (Configurer les pilotes de journalisation) dans la documentation Docker.  
AWS Batch prend actuellement en charge un sous-ensemble des pilotes de journalisation disponibles pour le démon Docker. Les pilotes de journal supplémentaires qui ne sont pas pris en charge actuellement seront peut-être disponibles dans les prochaines versions de l'agent de conteneur Amazon ECS.
Les pilotes de journal pris en charge sont `awslogs`, `fluentd`, `gelf`, `json-file`, `journald`, `logentries`, `syslog` et `splunk`.  
Les tâches exécutées sur les ressources Fargate sont limitées aux pilotes `awslogs` et aux pilotes de `splunk` journalisation.
Ce paramètre nécessite la version 1.18 de l'API Docker Remote ou une version ultérieure sur votre instance de conteneur. Pour vérifier la version de l'API Docker à distance de votre instance de conteneur, connectez-vous à votre instance de conteneur et exécutez la commande suivante : `sudo docker version | grep "Server API version"`  
L'agent de conteneur Amazon ECS qui s'exécute sur une instance de conteneur doit enregistrer les pilotes de journalisation disponibles sur cette instance auprès de la variable d'`ECS_AVAILABLE_LOGGING_DRIVERS`environnement. Sinon, les conteneurs placés sur cette instance ne peuvent pas utiliser ces options de configuration de journal. Pour plus d'informations, consultez [Configuration de l'agent du conteneur Amazon ECS](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-agent-config.html) dans le *Manuel du développeur Amazon Elastic Container Service*.  
`awslogs`  
Spécifie le pilote de CloudWatch journalisation Amazon Logs. Pour plus d'informations, consultez le pilote [Utiliser le pilote de journal awslogs](using_awslogs.md) de CloudWatch journalisation [ Amazon Logs ](https://docs.docker.com/config/containers/logging/awslogs/) dans la documentation Docker.  
`fluentd`  
Spécifie le pilote de journalisation Fluentd. Pour plus d'informations, notamment sur l'utilisation et les options, consultez le pilote de journalisation [ Fluentd ](https://docs.docker.com/config/containers/logging/fluentd/) dans la documentation Docker.  
`gelf`  
Spécifie le pilote de journalisation GELF (Graylog Extended Format). Pour plus d'informations, notamment sur l'utilisation et les options, consultez le pilote de journalisation [ Graylog Extended Format ](https://docs.docker.com/config/containers/logging/gelf/) dans la documentation Docker.  
`journald`  
Spécifie le pilote de journalisation journald. Pour plus d'informations, notamment sur l'utilisation et les options, consultez le pilote de [ journalisation Journald ](https://docs.docker.com/config/containers/logging/journald/) dans la documentation Docker.  
`json-file`  
Spécifie le pilote de journalisation du fichier JSON. Pour plus d'informations, notamment sur l'utilisation et les options, consultez le pilote de journalisation des fichiers [ JSON ](https://docs.docker.com/config/containers/logging/json-file/) dans la documentation Docker.  
`splunk`  
Spécifie le pilote de journalisation Splunk. Pour plus d'informations, notamment sur l'utilisation et les options, consultez le pilote de journalisation [ Splunk ](https://docs.docker.com/config/containers/logging/splunk/) dans la documentation Docker.  
`syslog`  
Spécifie le pilote de journalisation syslog. Pour plus d'informations, notamment sur l'utilisation et les options, consultez le pilote de journalisation [ Syslog ](https://docs.docker.com/config/containers/logging/syslog/) dans la documentation Docker.
Type : chaîne  
Obligatoire : oui  
Valeurs valides : `awslogs` \| `fluentd` \| `gelf` \| `journald` \| `json-file` \| `splunk` \| `syslog`  
Si vous disposez d'un pilote personnalisé qui ne figure pas dans la liste précédente et que vous souhaitez utiliser avec l'agent de conteneur Amazon ECS, vous pouvez bifurquer le projet d'agent de conteneur Amazon ECS [ disponible sur GitHub ](https://github.com/aws/amazon-ecs-agent) et le personnaliser pour qu'il fonctionne avec ce pilote. Nous vous conseillons d'envoyer des demandes d'extraction pour les modifications que vous souhaitez inclure. Cependant, Amazon Web Services ne prend actuellement pas en charge les demandes qui exécutent des copies modifiées de ce logiciel.  
`options`  
Options de configuration du journal à envoyer à un pilote de journal pour la tâche.  
Ce paramètre nécessite la version 1.19 de l'API Docker à distance ou une version supérieure sur votre instance de conteneur.  
Type : mappage chaîne/chaîne  
Obligatoire : non  
`secretOptions`  
Objet qui représente le secret à transmettre à la configuration de journal. Pour plus d’informations, consultez [Spécifier les données sensibles](specifying-sensitive-data.md).  
Type : tableau d’objets   
Obligatoire : non    
`name`  
Nom de l'option du pilote de journalisation à définir dans la tâche.  
Type : chaîne  
Obligatoire : oui  
`valueFrom`  
Le nom de ressource Amazon (ARN) du secret à exposer au journal de configuration du conteneur. Les valeurs prises en charge sont soit l'ARN complet du secret Secrets Manager, soit l'ARN complet du paramètre dans le magasin de paramètres SSM.  
Si le paramètre SSM Parameter Store existe en même temps Région AWS que la tâche que vous lancez, vous pouvez utiliser l'ARN complet ou le nom du paramètre. Si le paramètre existe dans une autre région, l'ARN complet doit être spécifié.
Type : chaîne  
Obligatoire : oui

`memory`  
*Ce paramètre est obsolète, `resourceRequirements` utilisez-le à la place. *  
Nombre de Mo de mémoire réservés pour la tâche.  
À titre d'exemple d'utilisation`resourceRequirements`, si votre définition de tâche contient une syntaxe similaire à la suivante.  

```
"containerProperties": {
  "memory": {{512}}
}
```
La syntaxe équivalente utilisée `resourceRequirements` est la suivante.  

```
"containerProperties": {
  "resourceRequirements": [
    {
      "type": "MEMORY",
      "value": "{{512}}"
    }
  ]
}
```
Type : Integer  
Obligatoire : oui

`mountPoints`  
Points de montage des volumes de données dans votre conteneur. Ce paramètre correspond à `Volumes` dans la section [Create a container](https://docs.docker.com/engine/api/v1.38/#operation/ContainerCreate) (Créer un conteneur) de l'[API Docker à distance](https://docs.docker.com/engine/api/v1.38/) et l'option `--volume` correspond à [**docker run**](https://docs.docker.com/engine/reference/commandline/run/).  

```
"mountPoints": [
                {
                  "sourceVolume": "{{string}}",
                  "containerPath": "{{string}}",
                  "readOnly": {{true|false}}
                }
              ]
```
Type : tableau d'objets  
Obligatoire : non    
`sourceVolume`  
Nom du volume à monter.  
Type : String  
Obligatoire : oui lorsque `mountPoints` est utilisé.  
`containerPath`  
Le chemin du conteneur sur lequel monter le volume hôte.  
Type : String  
Obligatoire : oui lorsque `mountPoints` est utilisé.  
`readOnly`  
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.  
Type : booléen  
Obligatoire : non  
Par défaut : false

`networkConfiguration`  
Configuration réseau pour les tâches exécutées sur les ressources Fargate. Les tâches exécutées sur des ressources EC2 ne doivent pas spécifier ce paramètre.  

```
"networkConfiguration": { 
   "assignPublicIp": "string"
}
```
Type : tableau d'objets  
Obligatoire : non    
`assignPublicIp`  
Indique si la tâche présene une adresse IP publique. Cela est nécessaire si la tâche nécessite un accès réseau sortant.  
Type : String  
Valeurs valides : `ENABLED` \| `DISABLED`  
Obligatoire : non  
Valeur par défaut : `DISABLED`

`privileged`  
Lorsque ce paramètre est défini sur true (vrai), des autorisations élevées inhérentes à l'instance de conteneur hôte sont accordées au conteneur (semblable à l'utilisateur `root`). Ce paramètre correspond à `Privileged` dans la section [Create a container](https://docs.docker.com/engine/api/v1.38/#operation/ContainerCreate) (Créer un conteneur) de l'[API Docker à distance](https://docs.docker.com/engine/api/v1.38/) et l'option `--privileged` correspond à [**docker run**](https://docs.docker.com/engine/reference/commandline/run/). Ce paramètre ne s'applique pas aux tâches exécutées sur les ressources Fargate. Ne le fournissez pas ou ne le spécifiez pas comme faux.  

```
"privileged": {{true|false}}
```
Type : booléen  
Obligatoire : non

`readonlyRootFilesystem`  
Quand ce paramètre a la valeur true, le conteneur ne dispose que d'un accès en lecture seule au système de fichiers racine. Ce paramètre correspond à `ReadonlyRootfs` dans la section [Create a container](https://docs.docker.com/engine/api/v1.38/#operation/ContainerCreate) (Créer un conteneur) de l'[API Docker à distance](https://docs.docker.com/engine/api/v1.38/) et l'option `--read-only` correspond à [**docker run**](https://docs.docker.com/engine/reference/commandline/run/).  

```
"readonlyRootFilesystem": {{true|false}}
```
Type : booléen  
Obligatoire : non

`resourceRequirements`  
Type et quantité d'une ressource à attribuer à un conteneur. Les ressources prises en charge comprennent `GPU`, `MEMORY` et `VCPU`.  

```
"resourceRequirements" : [
  {
    "type": "GPU",
    "value": "{{number}}"
  }
]
```
Type : tableau d'objets  
Obligatoire : non    
`type`  
Type d'une ressource à attribuer à un conteneur. Les ressources prises en charge comprennent `GPU`, `MEMORY` et `VCPU`.  
Type : String  
Obligatoire : oui lorsque `resourceRequirements` est utilisé.  
`value`  
La quantité de la ressource spécifiée à réserver pour le conteneur. Les valeurs varient en fonction du `type` spécifié.    
type="GPU"  
Nombre de GPU physiques à réserver pour le conteneur. Le nombre de GPU réservés à tous les conteneurs d'une tâche ne peut pas dépasser le nombre de GPU disponibles sur la ressource de calcul sur laquelle la tâche est lancée.  
type="MEMORY"  
La limite stricte (en Mio) de la mémoire à présenter le conteneur. Si votre conteneur tente de dépasser la mémoire spécifiée ici, il sera désactivé. Ce paramètre correspond à `Memory` dans la section [Create a container](https://docs.docker.com/engine/api/v1.38/#operation/ContainerCreate) (Créer un conteneur) de [Docker Remote API](https://docs.docker.com/engine/api/v1.38/) et l'option `--memory` à la commande [docker run](https://docs.docker.com/engine/reference/run/). Vous devez spécifier au moins 4 Mio de mémoire pour une tâche. Cela est obligatoire, mais vous pouvez le spécifier en plusieurs endroits pour les tâches parallèles à plusieurs nœuds (MNP). Elle doit être spécifiée pour chaque nœud au moins une fois. Ce paramètre correspond à `Memory` dans la section [Create a container](https://docs.docker.com/engine/api/v1.38/#operation/ContainerCreate) (Créer un conteneur) de [Docker Remote API](https://docs.docker.com/engine/api/v1.38/) tandis que l'option `--memory` correspond à la commande [docker run](https://docs.docker.com/engine/reference/run/).  
Si vous essayez de maximiser l'utilisation de vos ressources en fournissant à vos tâches autant de mémoire que possible pour un type d'instance particulier, consultez[Gestion de la mémoire des ressources informatiques](memory-management.md).
Pour les tâches exécutées sur les ressources Fargate, elles `value` doivent correspondre à l'une des valeurs prises en charge. De plus, les `VCPU` valeurs doivent être l'une des valeurs prises en charge pour cette valeur de mémoire.  

<a name="Fargate-memory-vcpu"></a>
<table>
<thead>
  <tr><th><code>VCPU</code></th><th><code>MEMORY</code></th></tr>
</thead>
<tbody>
  <tr><td>processeur virtuel 0,25</td><td>512, 1024 et 2048 MiB</td></tr>
  <tr><td>0,5 processeur virtuel</td><td>1024 à 4096 MiB par incréments de 1024 MiB</td></tr>
  <tr><td>1 vCPU</td><td>2 048 à 8192 MiB par incréments de 1 024 MiB</td></tr>
  <tr><td>2 vCPU</td><td>4096-16384 MiB par incréments de 1024 MiB</td></tr>
  <tr><td>4 vCPU</td><td>8192 à 30720 MiB par incréments de 1024 MiB</td></tr>
  <tr><td>8 vCPU</td><td>16384-61440 MiB par incréments de 4096 MiB</td></tr>
  <tr><td>16 vCPU</td><td>32768-122880 MiB par incréments de 8192 MiB</td></tr>
  <tr><td>32 processeurs virtuels</td><td>61440, 122880 et 249856 MiB</td></tr>
</tbody>
</table>
  
type="VCPU"  
Le nombre de vCPU réservés pour la tâche. Ce paramètre correspond à `CpuShares` dans la section [Create a container](https://docs.docker.com/engine/api/v1.38/#operation/ContainerCreate) (Créer un conteneur) de [Docker Remote API](https://docs.docker.com/engine/api/v1.38/) tandis que l'option `--cpu-shares` correspond à la commande [docker run](https://docs.docker.com/engine/reference/run/). Chaque processeur virtuel est équivalente à 1 024 parts de processeur. Pour les tâches exécutées sur des ressources EC2, vous devez spécifier au moins un processeur virtuel. Ceci est obligatoire mais peut être spécifié à plusieurs endroits. Elle doit être spécifiée pour chaque nœud au moins une fois.  
Pour les tâches exécutées sur des ressources Fargate, elles `value` doivent correspondre à l'une des valeurs prises en charge et les `MEMORY` valeurs doivent être l'une des valeurs prises en charge pour cette valeur de processeur virtuel. Les valeurs prises en charge sont 0,25, 0,5, 1, 2, 4, 8, 16 et 32.  
La valeur par défaut du quota de ressources du On-Demand processeur virtuel Fargate est de 6 processeurs virtuels. Pour plus d'informations sur les quotas Fargate, voir [AWS Quotas Fargate dans le. ](https://docs.aws.amazon.com/general/latest/gr/ecs-service.html#service-quotas-fargate) *Référence générale d'Amazon Web Services*
Type : String  
Obligatoire : oui lorsque `resourceRequirements` est utilisé.

`runtimePlatform`  
Un objet qui représente l'architecture de l'environnement informatique pour les AWS Batch tâches. Ce paramètre s'applique aux tâches exécutées sur les ressources AWS Fargate et Amazon ECS Managed Instances.  

```
"runtimePlatform": {
    "cpuArchitecture": "string",
    "operatingSystemFamily": "string"
}
```
Type : objet [RuntimePlatform](https://docs.aws.amazon.com/batch/latest/APIReference/API_RuntimePlatform.html)  
Obligatoire : non    
`cpuArchitecture`  
L'architecture vCPU. La valeur par défaut est `X86_64`.  
Ce paramètre doit être défini sur `X86_64` pour les conteneurs Windows.
Type : String  
Valeurs valides : `X86_64` \| `ARM64`  
Obligatoire : non  
`operatingSystemFamily`  
Système d'exploitation de l'environnement informatique.  
Les paramètres suivants ne peuvent pas être définis pour les conteneurs Windows : `linuxParameters` `privileged``user`,`ulimits`,`readonlyRootFilesystem`, et`efsVolumeConfiguration`.
Type : String  
Valeurs valides : `LINUX` \| `WINDOWS_SERVER_2019_CORE` \| `WINDOWS_SERVER_2019_FULL` \| `WINDOWS_SERVER_2022_CORE` \| `WINDOWS_SERVER_2022_FULL`  
Obligatoire : non

`secrets`  
Les secrets de la tâche qui sont exposés sous forme de variables d'environnement. Pour plus d’informations, consultez [Spécifier les données sensibles](specifying-sensitive-data.md).  

```
"secrets": [
    {
      "name": "{{secretName1}}",
      "valueFrom": "{{secretArn1}}"
    },
    {
      "name": "{{secretName2}}",
      "valueFrom": "{{secretArn2}}"
    }
    ...
]
```
Type : tableau d'objets  
Obligatoire : non    
`name`  
Le nom de la variable d'environnement qui contient le secret.  
Type : String  
Obligatoire : oui lorsque `secrets` est utilisé.  
  
`valueFrom`  
Secret à exposer au conteneur. Les valeurs prises en charge sont soit le nom de ressource Amazon complet (ARN) du secret Secrets Manager, soit l'ARN complet du paramètre dans le magasin de paramètres SSM.  
Si le paramètre SSM Parameter Store existe en même temps Région AWS que la tâche que vous lancez, vous pouvez utiliser l'ARN complet ou le nom du paramètre. Si le paramètre existe dans une autre région, l'ARN complet doit être spécifié.
Type : String  
Obligatoire : oui lorsque `secrets` est utilisé.

`ulimits`  
Une liste de valeurs `ulimits` à définir dans le conteneur. Ce paramètre correspond à `Ulimits` dans la section [Create a container](https://docs.docker.com/engine/api/v1.38/#operation/ContainerCreate) (Créer un conteneur) de l'[API Docker à distance](https://docs.docker.com/engine/api/v1.38/) et l'option `--ulimit` correspond à [**docker run**](https://docs.docker.com/engine/reference/commandline/run/).   

```
"ulimits": [
  {
    "name": {{string}},
    "softLimit": {{integer}},
    "hardLimit": {{integer}}
  }
  ...
]
```
Type : tableau d'objets  
Obligatoire : non    
`name`  
Le `type` d'`ulimit`.  
Type : String  
Obligatoire : oui lorsque `ulimits` est utilisé.  
  
`hardLimit`  
La limite stricte du type `ulimit`.  
Type : Integer  
Obligatoire : oui lorsque `ulimits` est utilisé.  
  
`softLimit`  
La limite flexible du type `ulimit`.  
Type : Integer  
Obligatoire : oui lorsque `ulimits` est utilisé.  


`user`  
Le nom utilisateur à utiliser à l'intérieur du conteneur. Ce paramètre correspond à `User` dans la section [Create a container](https://docs.docker.com/engine/api/v1.38/#operation/ContainerCreate) (Créer un conteneur) de l'[API Docker à distance](https://docs.docker.com/engine/api/v1.38/) et l'option `--user` correspond à [**docker run**](https://docs.docker.com/engine/reference/commandline/run/).  

```
"user": "{{string}}"
```
Type : chaîne  
Obligatoire : non

`vcpus`  
*Ce paramètre est obsolète, `resourceRequirements` utilisez-le à la place. *  
Nombre de processeurs virtuels réservés pour le conteneur.  
À titre d'exemple d'utilisation`resourceRequirements`, si votre définition de poste contient des lignes similaires à celles-ci :  

```
"containerProperties": {
  "vcpus": {{2}}
}
```
Les lignes équivalentes utilisées `resourceRequirements` sont les suivantes.  

```
"containerProperties": {
  "resourceRequirements": [
    {
      "type": "VCPU",
      "value": "{{2}}"
    }
  ]
}
```
Type : Integer  
Obligatoire : oui

`volumes`  
Lorsque vous enregistrez une définition de tâche, vous pouvez éventuellement préciser une liste de volumes qui sont transmis au daemon Docker sur une instance de conteneur. Les paramètres suivants sont autorisés dans les propriétés du conteneur :  

```
"volumes": [
  {
    "name": "{{string}}",
    "host": {
      "sourcePath": "{{string}}"
    },
    "efsVolumeConfiguration": {
      "authorizationConfig": {
        "accessPointId": "{{string}}",
        "iam": "{{string}}"
      },
      "fileSystemId": "{{string}}",
      "rootDirectory": "{{string}}",
      "transitEncryption": "{{string}}",
      "transitEncryptionPort": {{number}}
    }
  }
]
```  
`name`  
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 `sourceVolume` paramètre de définition de conteneur `mountPoints`.  
Type : chaîne  
Obligatoire : non  
`host`  
Le contenu du paramètre `host` détermine si le volume de données persiste sur l'instance de conteneur hôte et où il est stocké. Si le paramètre `host` est vide, le daemon Docker attribue un chemin hôte pour votre volume de données. Cependant, la persistance des données n'est pas garantie après l'arrêt de l'exécution du conteneur qui leur est associé.  
Ce paramètre ne s'applique pas aux tâches exécutées sur les ressources Fargate.
Type : objet  
Obligatoire : non    
`sourcePath`  
Le chemin d'accès sur l'instance de conteneur hôte qui est présenté au conteneur. Si ce paramètre est vide, le démon Docker attribue un chemin hôte pour vous.  
Si le paramètre `host` contient un emplacement de fichier `sourcePath`, le volume de données persiste à l'emplacement spécifié sur l'instance de conteneur hôte jusqu'à ce que vous le supprimiez manuellement. Si la valeur `sourcePath` n'existe pas sur l'instance de conteneur hôte, le démon Docker la crée. Si l'emplacement n'existe pas, le contenu du chemin source est exporté.  
Type : chaîne  
Obligatoire : non  
`efsVolumeConfiguration`  
Ce paramètre est spécifié lorsque vous utilisez un système de fichiers Amazon Elastic File System pour le stockage des tâches. Pour plus d’informations, consultez [Volumes Amazon EFS](efs-volumes.md).  
Type : objet  
Obligatoire : non    
`authorizationConfig`  
Détails de configuration des autorisations pour le système de fichiers Amazon EFS.  
Type : chaîne  
Obligatoire : non    
`accessPointId`  
ID de point d'accès Amazon EFS à utiliser. Si un point d'accès est spécifié, la valeur du répertoire racine spécifiée dans le `EFSVolumeConfiguration` doit être omise ou définie sur. `/` Cela applique le chemin défini sur le point d'accès EFS. Si un point d'accès est utilisé, le chiffrement de transit doit être activé dans `EFSVolumeConfiguration`. Pour plus d'informations, consultez [Utilisation des points d'accès Amazon EFS](https://docs.aws.amazon.com/efs/latest/ug/efs-access-points.html) dans le *Guide de l'utilisateur Amazon Elastic File System*.  
Type : chaîne  
Obligatoire : non  
`iam`  
Détermine s'il faut utiliser le rôle IAM de AWS Batch tâche défini dans une définition de tâche lors du montage du système de fichiers Amazon EFS. Si cette option est activée, le chiffrement en transit doit être activé dans la configuration `EFSVolumeConfiguration`. Si ce paramètre est omis, la valeur par défaut `DISABLED` est utilisée. Pour plus d’informations, consultez [Utiliser les points d'accès Amazon EFS](efs-volumes.md#efs-volume-accesspoints).  
Type : String  
Valeurs valides : `ENABLED` \| `DISABLED`  
Obligatoire : non  
`fileSystemId`  
ID du système de fichiers Amazon EFS à utiliser.  
Type : chaîne  
Obligatoire : non  
`rootDirectory`  
Répertoire du système de fichiers Amazon EFS à monter en tant que répertoire racine à l'intérieur de l'hôte. Si ce paramètre est omis, la racine du volume Amazon EFS est utilisée. Si vous le spécifiez`/`, cela a le même effet que l'omission de ce paramètre. La longueur maximale est de 4 096 caractères.  
Si un point d'accès EFS est spécifié dans le`authorizationConfig`, le paramètre du répertoire racine doit être omis ou défini sur. `/` Cela applique le chemin défini sur le point d'accès Amazon EFS.
Type : chaîne  
Obligatoire : non  
`transitEncryption`  
Détermine si vous souhaitez activer ou non le chiffrement des données Amazon EFS en transit entre l'hôte Amazon ECS et le serveur Amazon EFS. Le chiffrement en transit doit être activé si l'autorisation Amazon EFS IAM est utilisée. Si ce paramètre est omis, la valeur par défaut `DISABLED` est utilisée. Pour plus d'informations, consultez [Chiffrement des données en transit](https://docs.aws.amazon.com/efs/latest/ug/encryption-in-transit.html) dans le *Guide de l'utilisateur Amazon Elastic File System*.  
Type : String  
Valeurs valides : `ENABLED` \| `DISABLED`  
Obligatoire : non  
`transitEncryptionPort`  
Port à utiliser lors de l'envoi de données chiffrées entre l'hôte Amazon ECS et le serveur Amazon EFS. Si vous ne spécifiez pas de port de chiffrement en transit, il utilise la stratégie de sélection de port adoptée par l'assistant de montage Amazon EFS. La valeur doit être comprise entre 0 et 65 535. Pour plus d'informations, consultez [Assistant de montage EFS](https://docs.aws.amazon.com/efs/latest/ug/efs-mount-helper.html) dans le *Guide de l'utilisateur Amazon Elastic File System User*.  
Type : Integer  
Obligatoire : non

## Propriétés d'Amazon EKS
<a name="job-definition-parameters-eks-properties"></a>

Objet ayant plusieurs propriétés spécifiques à des tâches basées sur Amazon EKS. Cela ne doit pas être spécifié pour les définitions de tâches basées sur Amazon ECS.

`podProperties`  
Les propriétés des ressources du Kubernetes pod d'une tâche.  
Type : objet [EksPodProperties](https://docs.aws.amazon.com/batch/latest/APIReference/API_EksPodProperties.html)  
Obligatoire : non    
`containers`  
Propriétés du conteneur utilisé sur le pod Amazon EKS.  
Type : objet [EksContainer](https://docs.aws.amazon.com/batch/latest/APIReference/API_EksContainer.html)  
Obligatoire : non    
`args`  
Tableau d'arguments pour le point d'entrée. Si cela n'est pas spécifié, le `CMD` de l'image de conteneur est utilisée. Cela correspond au `args` membre situé dans la [ partie ](https://kubernetes.io/docs/reference/kubernetes-api/workload-resources/pod-v1/#entrypoint) Entrypoint du [ Pod](https://kubernetes.io/docs/reference/kubernetes-api/workload-resources/pod-v1/). Kubernetes Les références aux variables d'environnement sont étendues à l'aide de l'environnement du conteneur.  
Si la variable d'environnement référencée n'existe pas, la référence de la commande ne change pas. Par exemple, si la référence porte sur « `$(NAME1)` » et que la variable d'environnement `NAME1` n'existe pas, la chaîne de commande reste « `$(NAME1)` ». `$$` est remplacé par `$`, et la chaîne résultante n'est pas développée. Par exemple, `$$(VAR_NAME)` est transmis en tant que `$(VAR_NAME)`, que la variable d'environnement `VAR_NAME` existe ou non. Pour plus d'informations, consultez [ CMD ](https://docs.docker.com/engine/reference/builder/#cmd) dans la référence * Dockerfile * et [ Définissez une commande et des arguments pour un pod ](https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/) dans la documentation. * Kubernetes *  
Type : tableau de chaînes  
Obligatoire : non  
`command`  
Point d'entrée du conteneur. Il n'est pas exécuté dans un shell. Si cela n'est pas spécifié, le `ENTRYPOINT` de l'image de conteneur est utilisé. Les références aux variables d'environnement sont étendues à l'aide de l'environnement du conteneur.  
Si la variable d'environnement référencée n'existe pas, la référence de la commande ne change pas. Par exemple, si la référence porte sur « `$(NAME1)` » et que la variable d'environnement `NAME1` n'existe pas, la chaîne de commande reste « `$(NAME1)` ». `$$` est remplacé par `$`, et la chaîne résultante n'est pas développée. Par exemple, `$$(VAR_NAME)` est transmis en tant que `$(VAR_NAME)`, que la variable d'environnement `VAR_NAME` existe ou non. Ce point d'entrée ne peut pas être mis à jour. Pour plus d'informations, consultez [ ENTRYPOINT ](https://docs.docker.com/engine/reference/builder/#entrypoint) dans la référence * Dockerfile * et [ Définissez une commande et des arguments pour un conteneur ](https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/) et [https://kubernetes.io/docs/reference/kubernetes-api/workload-resources/pod-v1/#entrypoint](https://kubernetes.io/docs/reference/kubernetes-api/workload-resources/pod-v1/#entrypoint) Entrypoint dans la documentation. * Kubernetes *  
Type : tableau de chaînes  
Obligatoire : non  
`env`  
Variables d'environnement à transmettre à un conteneur.  
Les variables d'environnement ne peuvent pas commencer par « `AWS_BATCH` ». Cette convention de dénomination est réservée aux variables qui AWS Batch définissent.
Type : tableau d’objets [EksContainerEnvironmentVariable](https://docs.aws.amazon.com/batch/latest/APIReference/API_EksContainerEnvironmentVariable.html)  
Obligatoire : non    
`name`  
Nom de la variable d'environnement.  
Type : chaîne  
Obligatoire : oui  
`value`  
Valeur de la variable d'environnement.  
Type : chaîne  
Obligatoire : non  
`image`  
Image Docker utilisée pour démarrer le conteneur.  
Type : chaîne  
Obligatoire : oui  
`imagePullPolicy`  
Stratégie d'extraction d'images pour le conteneur. Les valeurs prises en charge sont `Always`, `IfNotPresent` et `Never`. Ce paramètre a pour valeur par défaut `IfNotPresent`. Toutefois, si la balise `:latest` est spécifiée, elle prend par défaut la valeur `Always`. Pour plus d'informations, consultez la section [ Mise à jour des images ](https://kubernetes.io/docs/concepts/containers/images/#updating-images) dans la * Kubernetes documentation*.  
Type : chaîne  
Obligatoire : non  
`name`  
Nom du conteneur. Si le nom n'est pas spécifié, le nom par défaut « `Default` » est utilisé. Chaque conteneur d'un pod doit porter un nom unique.  
Type : chaîne  
Obligatoire : non  
`resources`  
Le type et la quantité de ressources à attribuer à un conteneur. Les ressources prises en charge comprennent `memory`, `cpu` et `nvidia.com/gpu`. Pour plus d'informations, consultez la section Gestion des [ ressources pour les pods et les conteneurs ](https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/) dans la * Kubernetes documentation*.  
Type : objet [EksContainerResourceRequirements](https://docs.aws.amazon.com/batch/latest/APIReference/API_EksContainerResourceRequirements.html)  
Obligatoire : non    
`limits`  
Type et quantité de ressources spécifiés à réserver pour le conteneur. Les valeurs varient en fonction du `name` spécifié. Les ressources peuvent être demandées à l'aide des objets `limits` ou `requests`.    
memory  
Limite stricte de mémoire (en Mio) du conteneur, en entiers, avec un suffixe « Mi ». Si votre conteneur tente de dépasser la mémoire spécifiée, il est résilié. Vous devez spécifier au moins 4 Mio de mémoire pour une tâche. La `memory` peut être spécifiée dans `limits`, `requests` ou les deux. Si `memory` est spécifié dans les deux, la valeur spécifiée dans `limits` doit être égale à la valeur spécifiée dans `requests`.  
Pour optimiser l'utilisation de vos ressources, fournissez à vos tâches autant de mémoire que possible pour le type d'instance spécifique que vous utilisez. Pour savoir comment procéder, consultez [Gestion de la mémoire des ressources informatiques](memory-management.md).  
cpu  
Nombre de processeurs réservés pour le conteneur. Les valeurs doivent correspondre à un multiple pair de `0.25`. Le `cpu` peut être spécifié dans `limits`, `requests` ou les deux. Si le `cpu` est spécifié dans les deux, la valeur spécifiée dans `limits` doit être au moins égale à la valeur spécifiée dans `requests`.  
nvidia. com/gpu  
Nombre de GPU réservés pour le conteneur. Les valeurs doivent correspondre à un entier. `memory` peut être spécifié dans `limits`, `requests` ou les deux. Si `memory` est spécifié dans les deux, la valeur spécifiée dans `limits` doit être égale à la valeur spécifiée dans `requests`.
Type : mappage chaîne/chaîne  
Contraintes de longueur de valeur : longueur minimale de 1. Longueur maximale de 256.  
Obligatoire : non  
`requests`  
Type et quantité de ressources spécifiés à demander pour le conteneur. Les valeurs varient en fonction du `name` spécifié. Les ressources peuvent être demandées à l'aide des objets `limits` ou `requests`.    
memory  
Limite stricte de mémoire (en Mio) du conteneur, en entiers, avec un suffixe « Mi ». Si votre conteneur tente de dépasser la mémoire spécifiée, il est résilié. Vous devez spécifier au moins 4 Mio de mémoire pour une tâche. La `memory` peut être spécifiée dans `limits`, `requests` ou les deux. Si `memory` est spécifié dans les deux, la valeur spécifiée dans `limits` doit être égale à la valeur spécifiée dans `requests`.  
Si vous essayez de maximiser l'utilisation de vos ressources en fournissant à vos tâches autant de mémoire que possible pour un type d'instance particulier, consultez[Gestion de la mémoire des ressources informatiques](memory-management.md).  
cpu  
Nombre de processeurs réservés pour le conteneur. Les valeurs doivent correspondre à un multiple pair de `0.25`. Le `cpu` peut être spécifié dans `limits`, `requests` ou les deux. Si le `cpu` est spécifié dans les deux, la valeur spécifiée dans `limits` doit être au moins égale à la valeur spécifiée dans `requests`.  
nvidia. com/gpu  
Nombre de GPU réservés pour le conteneur. Les valeurs doivent correspondre à un entier. `nvidia.com/gpu` peut être spécifié dans `limits`, `requests` ou les deux. Si `nvidia.com/gpu` est spécifié dans les deux, la valeur spécifiée dans `limits` doit être égale à la valeur spécifiée dans `requests`.
Type : mappage chaîne/chaîne  
Contraintes de longueur de valeur : longueur minimale de 1. Longueur maximale de 256.  
Obligatoire : non  
`securityContext`  
Contexte de sécurité d'une tâche. Pour plus d'informations, consultez la section [ Configurer un contexte de sécurité pour un pod ou un conteneur ](https://kubernetes.io/docs/tasks/configure-pod-container/security-context/) dans la * Kubernetes documentation*.  
Type : objet [EksContainerSecurityContext](https://docs.aws.amazon.com/batch/latest/APIReference/API_EksContainerSecurityContext.html)  
Obligatoire : non    
`privileged`  
Lorsque ce paramètre est défini sur true `true`, des autorisations élevées inhérentes à l'instance de conteneur hôte sont accordées au conteneur. Le niveau des autorisations est similaire à celui des autorisations des `root` utilisateurs. La valeur par défaut est `false`. Ce paramètre correspond à la `privileged` politique décrite dans les politiques [ de sécurité du pod ](https://kubernetes.io/docs/concepts/security/pod-security-policy/#privileged) Privileged de la * Kubernetes documentation*.  
Type : booléen  
Obligatoire : non  
`readOnlyRootFilesystem`  
Lorsque ce paramètre est défini sur `true`, le conteneur ne dispose que d'un accès en lecture seule au système de fichiers racine. La valeur par défaut est `false`. Ce paramètre correspond à la `ReadOnlyRootFilesystem` politique définie dans les politiques de sécurité du module [ Volumes et systèmes de fichiers ](https://kubernetes.io/docs/concepts/security/pod-security-policy/#volumes-and-file-systems) de la * Kubernetes documentation*.  
Type : booléen  
Obligatoire : non  
`runAsGroup`  
Lorsque ce paramètre est spécifié, le conteneur est exécuté avec l'ID de groupe spécifié (`gid`). Si ce paramètre n'est pas spécifié, le groupe spécifié dans les métadonnées d'image correspond au groupe par défaut. Ce paramètre correspond aux `RunAsGroup` `MustRunAs` politiques de sécurité du module [ Utilisateurs et groupes de la * Kubernetes documentation et*](https://kubernetes.io/docs/concepts/security/pod-security-policy/#users-and-groups) à leur politique.  
Type : Long  
Obligatoire : non  
`runAsNonRoot`  
Lorsque ce paramètre est spécifié, le conteneur est exécuté en tant qu'utilisateur avec un `uid` autre que 0. Si ce paramètre n'est pas spécifié, cette règle est appliquée. Ce paramètre correspond aux `RunAsUser` `MustRunAsNonRoot` politiques de sécurité du module [ Utilisateurs et groupes de la * Kubernetes documentation et*](https://kubernetes.io/docs/concepts/security/pod-security-policy/#users-and-groups) à leur politique.  
Type : Long  
Obligatoire : non  
`runAsUser`  
Lorsque ce paramètre est spécifié, le conteneur est exécuté avec l'ID utilisateur spécifié (`uid`). Si ce paramètre n'est pas spécifié, le groupe spécifié dans les métadonnées d'image correspond au groupe par défaut. Ce paramètre correspond aux `RunAsUser` `MustRanAs` politiques de sécurité du module [ Utilisateurs et groupes de la * Kubernetes documentation et*](https://kubernetes.io/docs/concepts/security/pod-security-policy/#users-and-groups) à leur politique.  
Type : Long  
Obligatoire : non  
`volumeMounts`  
Montages de volumes pour un conteneur dans le cadre d'une tâche Amazon EKS. Pour plus d'informations sur les volumes et les montages de [ volumesKubernetes, consultez la section Volumes ](https://kubernetes.io/docs/concepts/storage/volumes/) dans la * Kubernetes documentation*.  
Type : tableau d’objets [EksContainerVolumeMount](https://docs.aws.amazon.com/batch/latest/APIReference/API_EksContainerVolumeMount.html)  
Obligatoire : non    
`mountPath`  
Le chemin d'accès du conteneur, sur lequel le volume est monté.  
Type : chaîne  
Obligatoire : non  
`name`  
Nom du montage de volume. Ce nom doit correspondre au nom d'un des volumes du pod.  
Type : chaîne  
Obligatoire : non  
`readOnly`  
Si cette valeur est `true`, le conteneur ne peut accéder au volume qu'en lecture. Dans le cas contraire, le conteneur peut écrire sur le volume. La valeur par défaut est `false`.  
Type : booléen  
Obligatoire : non  
`dnsPolicy`  
Stratégie DNS du pod. La valeur par défaut est `ClusterFirst`. Si le paramètre `hostNetwork` n'est pas spécifié, la valeur par défaut est `ClusterFirstWithHostNet`. `ClusterFirst` indique que toute requête DNS ne correspondant pas au suffixe de domaine du cluster configuré est transmise au serveur de noms en amont hérité du nœud. Si aucune valeur n'a été spécifiée `dnsPolicy` dans l'opération d'[RegisterJobDefinition](https://docs.aws.amazon.com/batch/latest/APIReference/API_RegisterJobDefinition.html)API, aucune valeur n'est renvoyée `dnsPolicy` par l'une [ DescribeJobDefinitions ](https://docs.aws.amazon.com/batch/latest/APIReference/API_DescribeJobDefinitions.html) ou l'autre des opérations d'[DescribeJobs](https://docs.aws.amazon.com/batch/latest/APIReference/API_DescribeJobs.html)API. Le paramètre de spécification du pod contient `ClusterFirst` ou `ClusterFirstWithHostNet`, selon la valeur du paramètre `hostNetwork`. Pour plus d'informations, consultez la politique DNS de [ Pod ](https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy) dans la * Kubernetes documentation*.  
Valeurs valides : `Default` \| `ClusterFirst` \| `ClusterFirstWithHostNet`  
Type : chaîne  
Obligatoire : non  
`hostNetwork`  
Indique si le pod utilise l'adresse IP réseau des hôtes. La valeur par défaut est `true`. Réglez cette option pour `false` activer le modèle de mise en réseau des Kubernetes pods. La plupart AWS Batch des charges de travail sont uniquement sortantes et ne nécessitent pas la surcharge d'allocation IP pour chaque pod pour les connexions entrantes. Pour plus d'informations, consultez la section Espaces de noms des [ hôtes ](https://kubernetes.io/docs/concepts/security/pod-security-policy/#host-namespaces) et mise [ en réseau des ](https://kubernetes.io/docs/concepts/workloads/pods/#pod-networking) pods dans la * Kubernetes documentation*.  
Type : booléen  
Obligatoire : non  
`serviceAccountName`  
Nom du compte de service utilisé pour exécuter le pod. Pour plus d'informations, consultez les sections Comptes de [Kubernetes service ](https://docs.aws.amazon.com/eks/latest/userguide/service-accounts.html) et [ Configuration d'un compte de Kubernetes service pour qu'il assume un rôle IAM ](https://docs.aws.amazon.com/eks/latest/userguide/associate-service-account-role.html) dans le Guide de l'utilisateur * Amazon EKS * et [ Configuration des comptes de service pour les pods ](https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/) dans la * Kubernetes documentation*.  
Type : chaîne  
Obligatoire : non  
`volumes`  
Spécifie les volumes d'une définition de tâche qui utilise des ressources Amazon EKS.  
Type : tableau d’objets [EksVolume](https://docs.aws.amazon.com/batch/latest/APIReference/API_EksVolume.html)  
Obligatoire : non    
Répertoire vide  
Spécifie la configuration d'un Kubernetes `emptyDir` volume. Un volume `emptyDir` est créé pour la première fois lorsqu'un pod est attribué à un nœud. Il existe tant que ce pod s'exécute sur ce nœud. Le volume `emptyDir` est initialement vide. Tous les conteneurs du pod peuvent lire et écrire les fichiers du volume `emptyDir`. Toutefois, le volume `emptyDir` peut être monté sur des chemins identiques ou différents dans chaque conteneur. Lorsqu'un pod est supprimé d'un nœud pour quelque raison que ce soit, les données du `emptyDir` sont définitivement supprimées. Pour plus d'informations, consultez [ EmptyDir ](https://kubernetes.io/docs/concepts/storage/volumes/#emptydir) dans la * Kubernetes documentation. *  
Type : objet [EksEmptyDir](https://docs.aws.amazon.com/batch/latest/APIReference/API_EksEmptyDir.html)  
Obligatoire : non    
medium  
Support sur lequel stocker le volume. La valeur par défaut est une chaîne vide utilisant le stockage du nœud.    
""  
**(Par défaut)** Utilisez le stockage sur disque du nœud.  
« Mémoire »  
Utilisez le volume `tmpfs` soutenu par la mémoire vive du nœud. Le contenu du volume est perdu lorsque le nœud redémarre, et tout stockage présent sur le volume est pris en compte dans la limite de mémoire du conteneur.
Type : chaîne  
Obligatoire : non  
Limite de taille  
Taille maximale du volume. Par défaut, aucune taille maximale n'est définie.  
Type : String  
Contraintes de longueur : longueur minimum de 1. Longueur maximale de 256.  
Obligatoire : non  
HostPath  
Spécifie la configuration d'un Kubernetes `hostPath` volume. Un volume `hostPath` monte un fichier ou un répertoire existant depuis le système de fichiers du nœud hôte dans votre pod. Pour plus d'informations, consultez [ HostPath ](https://kubernetes.io/docs/concepts/storage/volumes/#hostpath) dans la * Kubernetes documentation*.  
Type : objet [EksHostPath](https://docs.aws.amazon.com/batch/latest/APIReference/API_EksHostPath.html)  
Obligatoire : non    
*chemin*  
Chemin du fichier ou du répertoire sur l'hôte à monter dans les conteneurs du pod.  
Type : chaîne  
Obligatoire : non  
name  
Le nom du volume. Le nom doit être autorisé en tant que nom de sous-domaine DNS. Pour plus d'informations, consultez la section Noms de sous-domaines [ DNS ](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#dns-subdomain-names) dans la * Kubernetes documentation*.  
Type : chaîne  
Obligatoire : oui  
secret  
Spécifie la configuration d'un Kubernetes `secret` volume. Pour plus d'informations, voir [ secret ](https://kubernetes.io/docs/concepts/storage/volumes/#secret) dans la * Kubernetes documentation*.  
Type : objet [EksSecret](https://docs.aws.amazon.com/batch/latest/APIReference/API_EksSecret.html)  
Obligatoire : non    
facultatif  
Spécifie si le secret ou ses clés doivent être définies.  
Type : booléen  
Obligatoire : non  
Nom secret  
Le nom du secret. Le nom doit être autorisé en tant que nom de sous-domaine DNS. Pour plus d'informations, consultez la section Noms de sous-domaines [ DNS ](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#dns-subdomain-names) dans la * Kubernetes documentation*.  
Type : chaîne  
Obligatoire : oui

## Fonctionnalités de la plateforme
<a name="job-definition-parameters-platform-capabilities"></a>

`platformCapabilities`  
Les fonctionnalités de la plateforme requises par la définition du poste. Si aucune valeur n'est spécifiée, elle est par défaut `EC2`. Pour les tâches qui s'exécutent sur les ressources Fargate, `FARGATE` est spécifié. Pour les tâches exécutées sur des instances gérées Amazon ECS, `MANAGED_INSTANCES` est spécifié.  
Les tâches dotées de la fonctionnalité de `MANAGED_INSTANCES` plate-forme doivent utiliser `ecsProperties` (pas`containerProperties`) et ne prennent pas en charge les tâches parallèles multi-nœuds. Pour plus d’informations, consultez [Définitions des tâches sur les instances gérées Amazon ECS](ecs-managed-instances-job-definitions.md).  
Si la tâche s'exécute sur les ressources Amazon EKS, vous ne devez pas spécifier`platformCapabilities`.
Type : String  
Valeurs valides : `EC2` \| `FARGATE` \| `MANAGED_INSTANCES`  
Obligatoire : non

## Propager les balises
<a name="job-definition-parameters-propagate-tags"></a>

`propagateTags`  
Spécifie s'il faut propager les balises de tâche ou de la définition de tâche vers la tâche Amazon ECS correspondante. Si aucune valeur n'est spécifiée, les balises ne sont pas propagées. Les balises ne peuvent être propagées aux tâches que lorsque celles-ci sont créées. Pour les balises portant le même nom, les balises de tâche ont la priorité sur les balises de définition de tâche. Si le nombre total de balises combinées de la tâche et de la définition de la tâche est supérieur à 50, la tâche est déplacée vers l'`FAILED`état.  
Si la tâche s'exécute sur les ressources Amazon EKS, vous ne devez pas spécifier`propagateTags`.
Type : booléen  
Obligatoire : non

## Propriétés du nœud
<a name="nodeProperties"></a>

`nodeProperties`  
Lorsque vous enregistrez une définition de tâche parallèle multi-nœuds, vous devez spécifier une liste de propriétés de nœud. Ces propriétés de nœud définissent le nombre de nœuds à utiliser dans votre tâche, l'index de nœud principal et les différentes plages de nœuds à utiliser. Si le job s'exécute sur les ressources Fargate, vous ne pouvez pas le spécifier. `nodeProperties` Utilisez à la place `containerProperties`. Les propriétés de nœud suivantes sont autorisées dans une définition de tâche. Pour plus d’informations, consultez [Multi-node emplois parallèles](multi-node-parallel-jobs.md).  
Si la tâche s'exécute sur les ressources Amazon EKS, vous ne devez pas spécifier`nodeProperties`.
Type : objet [NodeProperties](https://docs.aws.amazon.com/batch/latest/APIReference/API_NodeProperties.html)  
Obligatoire : non    
`mainNode`  
Spécifie l'index de nœud pour le nœud principal d'une tâche parallèle à plusieurs nœuds. Cette valeur d'index de nœud doit être inférieure au nombre de nœuds.  
Type : Integer  
Obligatoire : oui  
`numNodes`  
Le nombre de nœuds associé à une tâche parallèle à plusieurs nœuds.  
Type : Integer  
Obligatoire : oui  
`nodeRangeProperties`  
Une liste des plages de nœuds et leurs propriétés associées avec une tâche parallèle à plusieurs nœuds.  
Un groupe de nœuds constitue un groupe identique de nœuds de tâches qui partagent tous les mêmes propriétés de conteneur. Vous pouvez spécifier jusqu' AWS Batch à cinq groupes de nœuds distincts pour chaque tâche.
Type : tableau d’objets [NodeRangeProperty](https://docs.aws.amazon.com/batch/latest/APIReference/API_NodeRangeProperty.html)  
Obligatoire : oui    
`targetNodes`  
La plage de nœuds, en utilisant les valeurs d'index des nœuds. Une plage de nœuds `0:3` indique les nœuds dont les valeurs d'index sont comprises entre `0` et `3`. Si la valeur de la plage de départ est omise (`:n`), 0 est utilisé pour démarrer la plage. Si la valeur de fin de la plage n'est pas spécifiée (`n:`), l'index de nœud le plus élevé possible est utilisé pour terminer la plage. Vos plages de nœuds cumulatives doivent tenir compte de tous les nœuds (`0:n`). Vous pouvez imbriquer des plages de nœuds, par exemple `0:10` et`4:5`. Dans ce cas, les propriétés `4:5` de la plage remplacent les `0:10` propriétés.   
Type : chaîne  
Obligatoire : non  
`container`  
Les détails du conteneur pour la plage de nœuds. Pour plus d’informations, consultez [Propriétés du conteneur](#containerProperties).  
Type : objet [ContainerProperties](https://docs.aws.amazon.com/batch/latest/APIReference/API_ContainerProperties.html)   
Obligatoire : non

## Stratégie de nouvelle tentative
<a name="retryStrategy"></a>

`retryStrategy`  
Lorsque vous enregistrez une définition de tâche, vous pouvez, si vous le souhaitez, définir une stratégie de nouvelle tentative à adopter pour les tâches en échec qui sont soumises avec cette définition de tâche. Toute stratégie de nouvelle tentative spécifiée au cours d'une [ SubmitJob ](https://docs.aws.amazon.com/batch/latest/APIReference/API_SubmitJob.html) opération remplace la stratégie de nouvelle tentative définie ici. Par défaut, chaque tâche est lancée une seule fois. Si vous spécifiez plusieurs tentatives, la tâche est réessayée en cas d'échec. Parmi les exemples de tentative d'échec, citons le fait que la tâche renvoie un code de sortie différent de zéro ou que l'instance de conteneur est terminée. Pour plus d’informations, consultez [Reprises de travail automatisées](job_retries.md).  
Type : objet [RetryStrategy](https://docs.aws.amazon.com/batch/latest/APIReference/API_RetryStrategy.html)  
Obligatoire : non    
`attempts`  
Nombre de fois où une tâche est passée en statut `RUNNABLE`. Vous pouvez indiquer entre 1 et 10 tentatives. Si `attempts` est supérieur à un, la tâche est relancée ce nombre de fois en cas d'échec, jusqu'à ce que son statut devienne `RUNNABLE`.  

```
"attempts": {{integer}}
```
Type : Integer  
Obligatoire : non  
`evaluateOnExit`  
Tableau contenant jusqu'à 6 objets qui spécifient les conditions dans lesquelles la tâche doit être AWS Batch réessayée ou échoue. Si ce paramètre est spécifié, le paramètre `attempts` doit également être spécifié. S'il `evaluateOnExit` est spécifié mais qu'aucune des entrées ne correspond, la tâche est réessayée.  

```
"evaluateOnExit": [
   {
      "action": "{{string}}",
      "onExitCode": "{{string}}",
      "onReason": "{{string}}",
      "onStatusReason": "{{string}}"
   }
]
```
Type : tableau d’objets [EvaluateOnExit](https://docs.aws.amazon.com/batch/latest/APIReference/API_EvaluateOnExit.html)  
Obligatoire : non    
`action`  
Spécifie l'action à exécuter si toutes les conditions spécifiées (`onStatusReason`, `onReason` et `onExitCode`) sont remplies. Les valeurs ne sont pas sensibles à la casse.  
Type : chaîne  
Obligatoire : oui  
Valeurs valides : `RETRY` \| `EXIT`  
`onExitCode`  
Contient un schéma globulaire correspondant à la représentation décimale de la valeur `ExitCode` renvoyée pour une tâche. Le modèle peut contenir jusqu'à 512 caractères. Il ne peut contenir que des chiffres. Il ne peut pas contenir de lettres ni de caractères spéciaux. Il peut éventuellement se terminer par un astérisque (\*) ; seul le début de la chaîne doit constituer une correspondance exacte.  
Type : chaîne  
Obligatoire : non  
`onReason`  
Contient un schéma globulaire correspondant à `Reason` celui renvoyé pour une tâche. Le modèle peut contenir jusqu'à 512 caractères. Il peut contenir des lettres, des chiffres, des points (.), des deux-points (:) et des espaces (espaces, tabulations). Il peut éventuellement se terminer par un astérisque (\*) ; seul le début de la chaîne doit constituer une correspondance exacte.  
Type : chaîne  
Obligatoire : non  
`onStatusReason`  
Contient un schéma globulaire correspondant à `StatusReason` celui renvoyé pour une tâche. Le modèle peut contenir jusqu'à 512 caractères. Il peut contenir des lettres, des chiffres, des points (.), des deux-points (:) et des espaces (espaces, tabulations). Il peut éventuellement se terminer par un astérisque (\*) ; seul le début de la chaîne doit constituer une correspondance exacte.  
Type : chaîne  
Obligatoire : non

## Priorité de planification
<a name="job-definition-parameters-schedulingPriority"></a>

`schedulingPriority`  
Priorité de planification pour les tâches soumises avec cette définition de tâche. Cela ne concerne que les emplois en attente d'emploi dans le cadre d'une politique de partage équitable. Les tâches avec une priorité de planification plus élevée sont planifiées avant celles dont la priorité de planification est inférieure.  
La valeur minimale prise en charge est 0 et la valeur maximale prise en charge est 9999.  
Type : Integer  
Obligatoire : non

## Étiquettes
<a name="job-definition-parameters-tags"></a>

`tags`  
Key-value paires de balises à associer à la définition du poste. Pour plus d’informations, consultez [Marquez vos AWS Batch ressources](using-tags.md).  
Type : mappage chaîne/chaîne  
Obligatoire : non

## Timeout
<a name="timeout"></a>

`timeout`  
Vous pouvez configurer une durée d'expiration pour vos tâches de sorte que si une tâche s'exécute plus longtemps que cela, AWS Batch elle soit terminée. Pour plus d’informations, consultez [Délais d'exécution des tâches](job_timeouts.md). Si une tâche est interrompue en raison d'un délai d'attente, elle n'est pas réessayée. Toute configuration de temporisation spécifiée au cours d'une [ SubmitJob ](https://docs.aws.amazon.com/batch/latest/APIReference/API_SubmitJob.html) opération remplace la configuration de temporisation définie ici. Pour plus d’informations, consultez [Délais d'exécution des tâches](job_timeouts.md).  
Type : objet [JobTimeout](https://docs.aws.amazon.com/batch/latest/APIReference/API_JobTimeout.html)  
Obligatoire : non    
`attemptDurationSeconds`  
Durée en secondes (mesurée à partir de l'`startedAt`horodatage de la tentative de tâche) après la AWS Batch fin des tâches inachevées. La valeur minimale pour le délai d'expiration est 60 secondes.  
Pour les tâches de tableau, le délai s'applique aux tâches enfants, et non à la tâche de tableau parent.  
Pour les tâches parallèles à plusieurs nœuds (MNP), le délai s'applique à l'ensemble de la tâche, et non aux nœuds individuels.  
Type : Integer  
Obligatoire : non