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.
Utilisation de montages liés avec Amazon ECS
Avec les montages par liaison, un fichier ou un répertoire sur un hôte, tel qu'une EC2 instance Amazon, est monté dans un conteneur. Les montages par liaison sont pris en charge pour les tâches hébergées à la fois sur les instances Fargate et Amazon. EC2 Les montages liés sont liés au cycle de vie du conteneur qui les utilise. Une fois que tous les conteneurs qui utilisent un montage lié sont arrêtés, par exemple lorsqu'une tâche est arrêtée, les données sont supprimées. Pour les tâches hébergées sur des EC2 instances Amazon, les données peuvent être liées au cycle de vie de l' EC2 instance Amazon hôte en spécifiant une host sourcePath valeur facultative dans votre définition de tâche. Pour de plus amples informations, consultez la section Montages liés
Voici quelques cas d'utilisation courants pour les montages liés.
-
Pour fournir un volume de données vide à monter dans un ou plusieurs conteneurs.
-
Pour monter un volume de données hôte dans un ou plusieurs conteneurs.
-
Pour partager un volume de données d'un conteneur source avec d'autres conteneurs dans la même tâche.
-
Pour exposer un chemin d'accès et son contenu d'un fichier Dockerfile à un ou plusieurs conteneurs.
Considérations relatives à l'utilisation des montages liés
Lorsque vous utilisez des montages liés, tenez compte des éléments suivants.
-
Par défaut, les tâches hébergées sur AWS Fargate une version de plate-forme
1.4.0ou ultérieure (Linux)1.0.0ou ultérieure (Windows) reçoivent un minimum de 20 GiB de stockage éphémère pour les montages liés. Vous pouvez augmenter la quantité totale de stockage éphémère jusqu’à un maximum de 200 Gio en spécifiant le paramètreephemeralStoragedans votre définition de tâche. -
Pour exposer des fichiers d'un fichier Dockerfile à un volume de données lorsqu'une tâche est exécutée, le plan de données Amazon ECS recherche une directive
VOLUME. Si le chemin absolu spécifié dans la directiveVOLUMEest le même que lecontainerPathspécifié dans la définition de tâche, les données du chemin de directiveVOLUMEsont copiées sur le volume de données. Dans l'exemple Dockerfile suivant, un fichier nomméexamplefiledans le répertoire/var/log/exportedest écrit sur l'hôte, puis monté à l'intérieur du conteneur.FROM public.ecr.aws/amazonlinux/amazonlinux:latest RUN mkdir -p/var/log/exportedRUN touch/var/log/exported/examplefileVOLUME ["/var/log/exported"]Par défaut, les autorisations de volume sont définies sur
0755et le propriétaire en tant queroot. Vous pouvez personnaliser ces autorisations dans le fichier Dockerfile. L'exemple suivant définit le propriétaire du répertoire en tant quenode.FROM public.ecr.aws/amazonlinux/amazonlinux:latest RUN yum install -y shadow-utils && yum clean all RUN useraddnodeRUN mkdir -p /var/log/exported && chownnode:node/var/log/exported RUN touch /var/log/exported/examplefile USERnodeVOLUME ["/var/log/exported"] -
Pour les tâches hébergées sur des EC2 instances Amazon, lorsqu'aucune
sourcePathvaleurhostet ne sont spécifiées, le daemon Docker gère le montage de liaison pour vous. Lorsqu'aucun conteneur ne fait référence à ce montage lié, le service de nettoyage des tâches de l'agent de conteneur Amazon ECS finit par le supprimer. Par défaut, cela se produit trois heures après la sortie du conteneur. Toutefois, vous pouvez configurer cette durée avec la variable de l'agentECS_ENGINE_TASK_CLEANUP_WAIT_DURATION. Pour de plus amples informations, veuillez consulter Configuration de l'agent de conteneur Amazon ECS. Si vous avez besoin de conserver ces données au-delà du cycle de vie de conteneur, spécifiez une valeursourcePathpour le montage lié.