Ein Tool zum Definieren und Ausführen von Docker-Anwendungen mit mehreren Containern. Es wird häufig zum Einrichten einer Entwicklungsumgebung oder einer automatisierten Testausführungsumgebung verwendet. Durch die Beschreibung der Definitionen von Webserver, DB-Server, Cache-Server usw. in einer XML-Datei können die für die Anwendungsausführung erforderlichen Container basierend auf der XML-Datei zusammen gestartet werden. yml ist ein Format zum Ausdrücken strukturierter Daten und kann intuitiv beschrieben werden, auch wenn Sie yml noch nie verwendet haben. Sie können die Struktur verstehen, indem Sie sich die Datei ansehen.
1 Bereiten Sie ** Dockerfile ** oder ** Image für die Verwendung ** auf DockerHub usw. vor. 2 Definieren Sie ** docker-compose.yml ** Schreiben Sie die Starteinstellungen für jeden Container. Dies entspricht der Angabe eines Bildnamens und verschiedener Flags mit dem Docker-Befehl run. 3 Führen Sie ** docker-compose up ** aus Geben Sie Docker-Compose in dem Verzeichnis an, in dem sich Docker-Compose befindet. Wenn es jedoch unverändert bleibt, wird es im Vordergrund ausgeführt, sodass es häufig durch Trennen mit der Option -d ausgeführt wird. Bei der Ausführung wird jeder Container gemäß der Definition von docker-compose.yml ausgeführt.
docker-compose.yml
version: '3' -#docker-Verfassen Sie die Dateiformatversion
services:
web: -#Servicename, jeder Name kann angegeben werden
build: . -#docker-compose.Der Build-Kontext ist dasselbe Verzeichnis wie yml. Daher muss eine Docker-Datei für den Webdienst im selben Verzeichnis wie die yml-Datei erstellt werden.
ports: -#Zeigt den Port an, der außerhalb des Containers freigelegt werden soll, und den Port, der zugeordnet werden soll.
- "5000:5000"
volumes:
- .:/code -#Docker mit Bind Mount-compose.Das Verzeichnis, in dem yml vorhanden ist, ist der Container/Im Codeverzeichnis gemountet.
- logvolume01:/var/log -#Das Volume von logvolume01, das in Volumes des Webdienstcontainers definiert ist/var/Auf Protokoll montiert.
links:
- redis -#Festlegen eines Links vom Webdienst zum Redis-Dienst
redis:
image: redis -#Der Redis-Dienst startet einfach einen Container mit dem Redis-Image.
volumes:
logvolume01 -#Wenn Sie ein benanntes Volume bereitstellen möchten, müssen Sie es in Volumes definieren.
Ausdrücklich{}Es ist jedoch nicht erforderlich, es zu schreiben. Wenn Sie Einstellungen wie Treiber für die Lautstärke schreiben,
Sie können die Einstellungen weiterhin unter dem Datenträgernamen schreiben. Wenn Sie jedoch einfach das Standardvolume verwenden, sind keine Einstellungen erforderlich.
% docker-compose -v
docker-compose version 1.26.2, build eefe0d31
Beim Herunterladen wird die Version von Docker-Compose angezeigt.
Recommended Posts