Docker Compose installieren Windows

Docker Compose installieren Windows

Voraussetzungen

Schritt 1: Entscheidung treffen — Docker Desktop oder Compose-Plugin?

Tipp: Wenn du Docker Desktop wegen Lizenz/Policy nicht möchtest, nutze WSL2 + Linux-Paketmanager oder Podman (andere Anleitung nötig).

Schritt 2: Docker Desktop installieren (Windows 10/11)

  1. Lade den offiziellen Installer von https://www.docker.com/products/docker-desktop herunter.
  2. Führe die MSI/EXE als Administrator aus und folge den Installationsschritten. Aktiviere nach Möglichkeit die Option “Use WSL 2 instead of Hyper-V”.
  3. Nach Installation: starte Docker Desktop und lasse es initialisieren. Bei der ersten Nutzung kann ein Systemneustart nötig sein.

Prüfen:

# Öffne PowerShell (nicht WSL)
docker version
docker compose version

Erwarte Ausgabe für Server (Engine) und Client sowie eine Compose-Version (z.B. Docker Compose version v2.x.x).

Schritt 3: Falls “docker compose” oder “docker-compose not found”

  1. Shell neu starten:
# Schließe PowerShell/Terminal und öffne es neu, oder
$env:Path = [System.Environment]::GetEnvironmentVariable("Path","Machine")
  1. Prüfe Plugin-Verzeichnis (PowerShell):
docker --help | Select-String compose
  1. Wenn du die alte standalone-Binary brauchst (nicht empfohlen): lade die Binary von GitHub Releases (docker/compose) herunter und platziere sie in einem Verzeichnis, das in PATH liegt. Beispiel:
# Beispiel: lade Binary herunter (ersetze URL durch aktuelle Version)
Invoke-WebRequest -Uri "https://github.com/docker/compose/releases/download/v2.20.2/docker-compose-windows-x86_64.exe" -OutFile "$env:ProgramFiles\Docker\docker-compose.exe"

Hinweis: Prüfe SHA256 der Datei beim Download von Releases; die Binary-Methode ist anfälliger für Inkonsistenzen.

Schritt 4: WSL2-Alternative (empfohlen für Windows Home / Entwickler)

  1. Installiere WSL2 (falls noch nicht vorhanden):
# Als Admin in PowerShell
wsl --install
# ggf. Reboot
  1. Installiere eine Linux-Distribution (z.B. Ubuntu) aus dem Microsoft Store.
  2. In WSL: installiere Docker Compose Plugin mit Paketmanager (bei Ubuntu):
# In WSL-Ubuntu
sudo apt update
sudo apt install docker.io docker-compose-plugin -y
# Start Docker daemon in WSL oder nutze Docker Desktop's WSL-Integration
  1. Prüfen:
docker version
docker compose version

Schritt 5: Einfaches docker-compose.yml Beispiel anlegen und starten

Lege eine Datei docker-compose.yml im Projektordner an:

version: "3.8"
services:
  web:
    image: nginx:stable
    ports:
      - "8080:80"
    restart: unless-stopped

Starte die Compose‑Anwendung:

docker compose up -d
docker compose ps
docker compose logs web

Warnhinweis vor destruktiven Befehlen

Warnung: Die folgenden Befehle können Daten/Container/Images löschen. Erstelle vorher Sicherungen wichtiger Daten (Volumes, ggf. Backups der Datenverzeichnisse).

# Entfernt nicht verwendete Container, Netzwerke, Images (vorsichtig!)
docker system prune -a

Häufige Fehler & Lösungen

Abschluss & Versionsprüfung

Prüfe die installierte Compose-Version:

docker compose version
# oder für standalone
docker-compose --version

Hinweis: Keine Garantie, dass alle Schritte auf jedem Windows-System exakt gleich laufen. Wenn spezielle Fehlermeldungen auftreten, sammle Ausgabe von docker version, docker info und docker compose version und prüfe Logs in Docker Desktop (Troubleshoot).

Das Team von linux.hackshelps.com empfiehlt Docker Compose v2 (Plugin) für neue Projekte; bei rechtlichen oder Policy‑Bedenken gegenüber Docker Desktop kann WSL2 + Engine/Compose-Plugin oder Podman eine Alternative sein.

Kommst du an dieser Stelle nicht weiter oder funktioniert ein Schritt bei dir anders als beschrieben? Schreib uns einfach kurz, woran es hakt – schreib uns eine E-Mail, wir schauen es uns gemeinsam an.

Passende Themen

Häufige Fragen

Soll ich Docker oder Podman verwenden?

Beide haben ihre Berechtigung. Podman läuft standardmäßig rootless (potenziell sicherer), Docker hat das größere Ökosystem. Wir benennen die Unterschiede ehrlich statt einer Pauschalempfehlung.

Ist docker system prune gefährlich?

Es kann ungenutzte Container, Images und Volumes löschen - inklusive Daten, die noch gebraucht werden. Vor dem Ausführen immer prüfen, was betroffen ist, und wichtige Daten sichern.

Warum bekomme ich bei Docker eine Permission-Denied-Fehlermeldung?

Meist fehlt der eigene Nutzer in der docker-Gruppe. Das lässt sich beheben, sollte aber mit Bedacht gemacht werden, da Mitglieder dieser Gruppe root-ähnliche Rechte erhalten.