Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Bind-Mounts mit Amazon ECS verwenden
Bei Bind-Mounts wird eine Datei oder ein Verzeichnis auf einem Host, z. B. einer EC2 Amazon-Instance, in einen Container gemountet. Bind-Mounts werden für Aufgaben unterstützt, die sowohl auf Fargate- als auch auf EC2 Amazon-Instances gehostet werden. Bind-Mounts sind an den Lebenszyklus des Containers gebunden, in dem sie verwendet werden. Nachdem alle Container, die ein Bind-Mount verwenden, gestoppt wurden, z. B. wenn eine Aufgabe gestoppt wird, werden die Daten entfernt. Bei Aufgaben, die auf EC2 Amazon-Instances gehostet werden, können die Daten an den Lebenszyklus der EC2 Host-Amazon-Instance gebunden werden, indem Sie in Ihrer Aufgabendefinition einen host optionalen sourcePath Wert angeben. Weitere Informationen finden Sie unter Bind-Mounts
Die folgenden Szenarien sind gängige Anwendungsfälle für Bind-Mounts.
-
So stellen Sie ein leeres Daten-Volume bereit, das in einem oder mehreren Containern bereitgestellt werden soll.
-
So stellen Sie ein Host-Daten-Volume in einem oder mehreren Containern bereit.
-
So geben Sie ein Daten-Volume aus einem Quell-Container für andere Container in derselben Aufgabe frei.
-
Um einen Pfad und seinen Inhalt aus einer Dockerdatei für einen oder mehrere Container verfügbar zu machen.
Überlegungen zur Verwendung von Bind-Mounts
Bei der Verwendung von Bind-Mounts sollte Folgendes berücksichtigt werden.
-
Standardmäßig erhalten Aufgaben, die auf der AWS Fargate Plattformversion
1.4.0oder höher (Linux)1.0.0oder höher (Windows) gehostet werden, mindestens 20 GiB flüchtigen Speicher für Bind-Mounts. Sie können die Gesamtmenge des flüchtigen Speichers bis zu einem Maximum von 200 GiB erhöhen, indem Sie denephemeralStorage-Parameter in Ihrer Aufgabendefinition angeben. -
Um Dateien aus einer Docker-Datei auf einem Daten-Volume verfügbar zu machen, wenn eine Aufgabe ausgeführt wird, sucht die Amazon-ECS-Datenebene nach einer
VOLUME-Richtlinie. Wenn der absolute Pfad, der in derVOLUME-Richtlinie angegeben ist der gleiche wiecontainerPathist, die in der Aufgabendefinition angegeben sind, werden die Daten imVOLUME-Richtlinienpfad auf das Daten-Volume kopiert. Im folgenden Dockerfile-Beispiel wird eine Datei mit dem Namenexamplefileim/var/log/exported-Verzeichnis auf den Host geschrieben und dann innerhalb des Containers gemountet.FROM public.ecr.aws/amazonlinux/amazonlinux:latest RUN mkdir -p/var/log/exportedRUN touch/var/log/exported/examplefileVOLUME ["/var/log/exported"]Standardmäßig sind die Volume-Berechtigungen auf
0755und der Besitzer alsrootfestgelegt. Sie können diese Berechtigungen in der Dockerfile anpassen. Das folgende Beispiel definiert den Eigentümer des Verzeichnisses alsnode.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"] -
Bei Aufgaben, die auf EC2 Amazon-Instances gehostet werden und kein
sourcePathWert fürhostund angegeben ist, verwaltet der Docker-Daemon den Bind-Mount für Sie. Wenn keine Container auf dieses Bind-Mount verweisen, löscht der Aufgabenbereinigungsservice des Amazon-ECS-Container-Agenten es letztendlich. Standardmäßig geschieht dies drei Stunden nach dem Stoppen des Containers. Die Zeitspanne kann aber mit der Agenten-VariableECS_ENGINE_TASK_CLEANUP_WAIT_DURATIONkonfiguriert werden. Weitere Informationen finden Sie unter Konfiguration des Amazon-ECS-Container-Agenten. Wenn Sie diese Daten länger als den Lebenszyklus des Containers beibehalten möchten, geben Sie für den Bind-Mount einensourcePath-Wert an.