Zum Inhalt springen
Serverküche
Suche

Die Suche wird geladen … (nur in der veröffentlichten Seite verfügbar).

Container Schwierigkeit: Einsteiger

Docker auf Debian installieren

Docker Engine und Docker Compose sauber aus dem offiziellen Repository installieren – die Basis für die meisten Selfhosting-Rezepte.

· 3 Min. Lesezeit ·Dauer: ca. 15 Minuten
Inhaltsverzeichnis

Docker ist die Grundlage für fast alle Anwendungs-Tutorials in der Serverküche. Wir installieren es aus dem offiziellen Docker-Repository – nicht aus den Debian-Paketquellen.

Was bauen wir?

Am Ende läuft die aktuelle Docker Engine samt Compose-Plugin auf deinem Debian 13, installiert aus dem offiziellen Docker-Repository. Das bringt zwei Vorteile gegenüber dem Debian-Paket docker.io: aktuellere Versionen mit zeitnahen Sicherheitsupdates und das offizielle docker compose, auf dem alle Compose-Rezepte hier aufbauen.

Voraussetzungen

Schritt für Schritt

Schritt 1: Repository-Schlüssel einrichten

Installiere zunächst die Werkzeuge, um das Docker-Repository verifizieren zu können:

sudo apt update
sudo apt install -y ca-certificates curl

Lege dann das Schlüsselverzeichnis an und lade den GPG-Schlüssel von Docker herunter – damit prüft apt später, dass die Pakete wirklich von Docker stammen:

sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/debian/gpg -o /etc/apt/keyrings/docker.asc

Schritt 2: Docker-Paketquelle hinzufügen

Trage das Docker-Repository in die Paketquellen ein. Der Befehl ermittelt Architektur und Debian-Version automatisch, du kannst ihn unverändert kopieren:

echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/debian $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

Schritt 3: Docker installieren

Paketlisten neu einlesen (jetzt inklusive Docker-Repository) und die Engine samt Compose-Plugin installieren:

sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin

Prüfe, dass der Dienst läuft:

sudo systemctl status docker

Du solltest active (running) sehen. Ein kurzer Funktionstest:

sudo docker run --rm hello-world

Die Ausgabe Hello from Docker! bestätigt, dass die Installation funktioniert.

Schritt 4: Docker ohne sudo nutzen

Füge deinen Benutzer der Gruppe docker hinzu, damit du nicht vor jeden Befehl sudo setzen musst:

sudo usermod -aG docker $USER

Tipp

Die Gruppenmitgliedschaft greift erst nach dem Ab- und Wiederanmelden (SSH-Sitzung beenden und neu verbinden).

Sicherheitshinweis

Mitglieder der docker-Gruppe haben effektiv root-Rechte auf dem Server – füge nur deinen eigenen Admin-Benutzer hinzu, keine geteilten oder unprivilegierten Konten.

Danach funktioniert docker ps ohne sudo und zeigt eine (noch leere) Container-Liste.

Wenn es nicht funktioniert

Symptom: E: Unable to locate package docker-ce

Ursache & Lösung: Die Paketquelle aus Schritt 2 fehlt oder ist fehlerhaft. Prüfe den Inhalt von /etc/apt/sources.list.d/docker.list – dort muss deine Debian-Version (z. B. trixie) stehen – und führe danach erneut sudo apt update aus.

Symptom: permission denied while trying to connect to the Docker daemon socket

Ursache & Lösung: Die docker-Gruppenmitgliedschaft greift noch nicht. SSH-Sitzung beenden und neu verbinden; groups muss danach docker enthalten. Falls nicht, Schritt 4 wiederholen.

Symptom: Konflikte bei der Installation mit bereits vorhandenen Paketen

Ursache & Lösung: Auf dem System ist schon eine andere Docker-Variante installiert (docker.io, podman-docker, …). Alte Pakete zuerst entfernen: sudo apt remove docker.io docker-doc docker-compose podman-docker containerd runc – bestehende Container/Images bleiben dabei erhalten.

Symptom: docker compose meldet 'compose' is not a docker command

Ursache & Lösung: Das Compose-Plugin fehlt – wahrscheinlich wurde Docker früher anders installiert. sudo apt install docker-compose-plugin nachholen. Achtung: Das alte docker-compose (mit Bindestrich) ist ein anderes, veraltetes Werkzeug.

Wartung & Backups

  • Updates: Docker aktualisiert sich über das normale sudo apt update && sudo apt upgrade mit – ein Grund, warum wir das offizielle Repository nutzen. Beim Update der Engine starten laufende Container kurz neu (bzw. stoppen, bis du sie wieder startest) – plane das ein.
  • Aufräumen: Ungenutzte Images und Build-Reste sammeln sich schnell an. docker system df zeigt den Verbrauch, docker system prune räumt auf (Vorsicht: entfernt auch gestoppte Container).
  • Backups: Die eigentlichen Daten deiner Anwendungen liegen später in Volumes bzw. Bind-Mounts – die Backup-Strategie dafür behandeln wir in den jeweiligen Anwendungs-Tutorials.

Feedback per E-Mail: feedback@serverkueche.de

Das könnte dir auch schmecken

Grundlagen Einsteiger

Erste Schritte mit einem netcup VPS

Vom bestellten Server zum einsatzbereiten System: SSH-Login, Updates, ein sudo-Benutzer und die wichtigsten Handgriffe …

· 4 Min. Lesezeit