Docker Compose ist ein Tool, das es ermöglicht, Multi‑Container‑Docker‑Anwendungen zu definieren und auszuführen. Mit Docker Compose können Sie eine YAML‑Datei nutzen, um die Dienste, Netzwerke und Volumes der Anwendung zu konfigurieren, sodass mehrere miteinander verbundene Container als eine Einheit verwaltet werden.
Docker Compose wurde 2014 eingeführt, um die Verwaltung von Docker‑Anwendungen mit mehreren Containern zu vereinfachen. Seitdem ist es zu einem beliebten Werkzeug im Docker‑Ökosystem geworden und bietet eine einfache und effiziente Möglichkeit, Container zu orchestrieren.
Wie Docker Compose funktioniert
Docker Compose arbeitet, indem es eine YAML‑Datei einliest, die die Dienste, Netzwerke und Volumes der Anwendung beschreibt. Jeder Dienst wird als Container definiert, und die YAML‑Datei legt fest, wie die Container konfiguriert werden und miteinander kommunizieren sollen.
Wenn Sie Docker Compose ausführen, erstellt es ein Netzwerk für die Anwendung und startet die in der YAML‑Datei definierten Container. Die Container werden in der Reihenfolge gestartet, die in der YAML‑Datei angegeben ist, und jeder Container erhält seine eigenen Umgebungsvariablen, Konfigurationsdateien und weitere Ressourcen.
Sobald die Container laufen, stellt Docker Compose eine Reihe von Befehlen zur Verwaltung der Anwendung bereit, etwa zum Starten und Stoppen von Containern, Skalieren von Diensten und Anzeigen von Logs.
Docker Compose verwenden
Um Docker Compose zu nutzen, müssen Sie zunächst eine YAML‑Datei erstellen, die Ihre Anwendung beschreibt. Hier ein Beispiel für eine einfache Docker‑Compose‑YAML‑Datei:
version: '3'
services:
web:
image: nginx
ports:
- "8000:80"
db:
image: postgres
environment:
POSTGRES_PASSWORD: example
In diesem Beispiel haben wir zwei Dienste: „web“ und „db“. Der Dienst web verwendet das nginx‑Image und stellt Port 8000 für den Host bereit. Der Dienst db nutzt das postgres‑Image und setzt die Umgebungsvariable POSTGRES_PASSWORD.
Um die Anwendung zu starten, führen Sie den folgenden Befehl aus:
Dieser Befehl liest die YAML‑Datei ein und startet die darin definierten Container. Anschließend können Sie den Web‑Dienst erreichen, indem Sie einen Browser öffnen und zu http://localhost:8000 navigieren.
Fazit
Docker Compose ist ein leistungsstarkes Werkzeug zur Verwaltung von Docker‑Anwendungen mit mehreren Containern. Mit Docker Compose können Sie Ihre Anwendung als ein Netzwerk miteinander verbundener Container definieren, was die Verwaltung und Skalierung erheblich erleichtert. Durch die Verwendung einer einfachen YAML‑Datei zur Konfiguration Ihrer Anwendung ermöglicht Docker Compose das schnelle Erstellen, Ausführen und Verwalten komplexer containerbasierter Systeme.