Startseite / Wiki / Docker Compose
Homelab

Docker Compose

Docker Compose definiert mehrere Container als eine Einheit in einer YAML-Datei — so startest du komplexe Anwendungen mit einem einzigen Befehl.

30. Mai 2026

Was ist Docker Compose?

Docker Compose ist ein Werkzeug, das mehrere Docker-Container gemeinsam verwaltet. Du beschreibst alle Container, Netzwerke und Volumes in einer einzigen compose.yaml-Datei und startest alles mit einem Befehl.

Wie sieht eine Compose-Datei aus?

Ein typisches Beispiel für einen Webserver mit Datenbank:

compose.yaml
services:
wordpress:
  image: wordpress:latest
  ports:
    - "8080:80"
  environment:
    WORDPRESS_DB_HOST: db
    WORDPRESS_DB_PASSWORD: geheim
  depends_on:
    - db

db:
  image: mariadb:11
  environment:
    MARIADB_ROOT_PASSWORD: geheim
    MARIADB_DATABASE: wordpress
  volumes:
    - db_data:/var/lib/mysql

volumes:
db_data:

Die wichtigsten Compose-Befehle

bash
# Alle Container starten (im Hintergrund)
docker compose up -d

# Alle Container stoppen
docker compose down

# Logs anzeigen
docker compose logs -f

# Status der Container prüfen
docker compose ps

# Container neu bauen und starten
docker compose up -d --build

Was bedeuten die wichtigsten Felder?

  • image — welches Docker-Image verwendet wird (von Docker Hub oder eigenes)
  • ports — Port-Mapping: Host-Port:Container-Port
  • environment — Umgebungsvariablen für Konfiguration
  • volumes — persistente Datenspeicherung, damit Daten den Container-Neustart überleben
  • depends_on — Startreihenfolge: dieser Container startet erst wenn der andere läuft
  • networks — Container in eigene Netzwerke isolieren

Tipp

compose.yaml vs. docker-compose.yml

Seit Docker Compose V2 heißt die bevorzugte Datei compose.yaml. Der alte Name docker-compose.yml funktioniert aber weiterhin. Der Befehl lautet nun docker compose (ohne Bindestrich) statt docker-compose.

Hinweis

FAQ

Was ist der Unterschied zwischen Docker und Docker Compose?
Docker startet einzelne Container. Docker Compose koordiniert mehrere Container als eine Einheit — ideal für Anwendungen die aus mehreren Diensten bestehen.
Muss ich Docker Compose extra installieren?
In Docker Desktop ist Compose bereits enthalten. Auf Linux-Servern installierst du es mit dem Docker-Plugin: `apt install docker-compose-plugin`.
Wie aktualisiere ich einen Container mit Compose?
Mit `docker compose pull` holst du neue Images und mit `docker compose up -d` startest du die aktualisierten Container. Daten in Volumes bleiben dabei erhalten.
Kann ich Compose mit Coolify oder Portainer verwenden?
Ja. Coolify und Portainer können Compose-Dateien direkt einlesen und verwalten — du musst nicht immer auf der Kommandozeile arbeiten.
#docker #docker-compose #container #self-hosting #yaml #homelab