Docker Compose Grundlagen
Einführung in Docker Compose
Docker Compose ist ein leistungsstarkes Werkzeug zur Definition und Ausführung von Multi-Container-Docker-Anwendungen. Es ermöglicht Entwicklern, eine YAML-Datei zur Konfiguration von Anwendungsservices, Netzwerken und Volumes zu verwenden, wodurch der Prozess der Container-Orchestrierung vereinfacht wird.
Schlüsselkonzepte
Docker Compose bietet einen deklarativen Ansatz zur Verwaltung komplexer Anwendungsumgebungen. Es ermöglicht Entwicklern:
- Mehrere Container in einer einzigen Konfigurationsdatei zu definieren
- Containerabhängigkeiten zu verwalten
- Services einfach zu skalieren
- Die Startreihenfolge von Containern zu steuern
graph TD
A[Docker Compose] --> B[YAML-Konfiguration]
B --> C[Service-Definitionen]
B --> D[Netzwerk-Konfiguration]
B --> E[Volume-Zuordnung]
Grundlegende Konfigurationsstruktur
Komponente |
Beschreibung |
Zweck |
version |
Compose-Dateiformatversion |
Definiert die Kompatibilität |
services |
Containerdefinitionen |
Einzelne Container spezifizieren |
networks |
Benutzerdefinierte Netzwerk-Konfigurationen |
Containerkommunikation verwalten |
volumes |
Persistente Datenspeicherung |
Datenpersistenz handhaben |
Praktisches Beispiel
Hier ist eine Beispielkonfiguration von Docker Compose für eine einfache Webanwendung:
version: "3.8"
services:
web:
image: nginx:latest
ports:
- "80:80"
database:
image: postgres:13
environment:
POSTGRES_PASSWORD: mysecretpassword
Installation unter Ubuntu 22.04
sudo apt update
sudo apt install docker-compose-plugin
docker compose version
Detaillierte Service-Konfiguration
Die Docker Compose-Datei definiert die Interaktion der Container und spezifiziert:
- Container-Images
- Port-Zuordnungen
- Umgebungsvariablen
- Netzwerkregeln
- Volume-Anhänge
Dieser Ansatz vereinfacht die Containerverwaltung und ermöglicht es Entwicklern, Multi-Container-Anwendungen als einzelne, deploybare Einheiten durch Container-Orchestrierungstechniken zu behandeln.