- Authors

- Name
- Phillip Pham
- @ddppham
Docker lernen: Die Roadmap vom ersten Container bis zur Produktion
TL;DR
- Docker-Container sind wie perfekt gepackte Koffer für Ihren Code — alles drin, was die Reise braucht, nichts mehr, nichts weniger. Docker löst das berühmte „Es funktioniert auf meinem Rechner"-Problem, indem Anwendung, Abhängigkeiten und Konfiguration in ein standardisiertes Paket kommen, das überall gleich läuft.
- Die Roadmap in 7 Schritten: Pull & Run → eigenes Dockerfile → Networking → Docker Compose → Volumes → Produktions-Best-Practices → CI/CD.
docker pull postgresund eine Datenbank läuft in Sekunden — fertige Images sparen Wochen an Setup-Zeit.- Docker Compose ist der Einstieg in Configuration-as-Code — ein Kernprinzip von DevOps.
- Docker ist der Einstieg — Kubernetes der natürliche nächste Schritt. Bei Hunderten Containern scheitern Docker und Compose: Es fehlen Auto-Restart, Skalierung, Rolling Updates und Load Balancing.
Das Problem, das Docker löst
„It works on my machine"
Lokal Node 14, Produktion Node 16 — die App läuft lokal, bricht auf dem Server. Umgebungsunterschiede sind die klassische Fehlerquelle in der Softwareentwicklung.
Die Lösung
Docker packt Anwendung, Bibliotheken, Abhängigkeiten und Konfiguration in einen Container, der überall identisch läuft — lokal, Test, Produktion. Damit wird die Umgebungs-Varianz komplett eliminiert.
Der unschätzbare Vorteil: Fertige Images
Für fast jede Software gibt es offizielle Images (MySQL, PostgreSQL, MongoDB, Redis, RabbitMQ, Kafka, Nginx, Apache). Statt Software manuell zu installieren und zu konfigurieren:
# Eine Datenbank läuft in Sekunden statt Stunden Setup
docker pull postgres
docker run -d -p 5432:5432 postgres
Docker Hub ist wie GitHub, nur für Container-Images. Das reduziert die Zeit bis zum ersten produktiven Einsatz neuer Technologien drastisch.
Die Roadmap in 7 Schritten
Schritt 1–2: Grund-Kommandos (70–80 % des Alltags)
Die Basis-Kommandos decken den größten Teil des täglichen Umgangs ab:
docker pull <image> # Image ziehen
docker run <image> # Container starten, Port konfigurieren
docker ps # laufende Container anzeigen
docker stop <id> # Container stoppen
docker rm <id> # Container entfernen
docker images # lokale Images listen
Empfehlung: Starten Sie mit leichtgewichtigen Images (Nginx, Redis). Pull, run, interagieren — das gibt Hands-on-Praxis ohne eigenes Bauen.
Schritt 3: Das eigene Dockerfile
Ein Dockerfile ist das Rezept für Ihr Image. Die ~70 % jedes Dockerfiles sind immer gleich:
# Basis-Image
FROM node:20
# Arbeitsverzeichnis
WORKDIR /app
# Abhängigkeiten zuerst kopieren (Layer-Caching!)
COPY package*.json ./
RUN npm install
# Quellcode kopieren
COPY . .
# Port freigeben
EXPOSE 3000
# Dienst starten
CMD ["npm", "start"]
Lern-Tipp: Nehmen Sie eine kleine, realistische App und dockerisieren Sie sie. Statt Befehle auswendig zu lernen, verstehen Sie durch das Projekt, was wozu dient.
Schritt 4: Docker-Networking
Real-World-Apps brauchen mehrere Container (Frontend, Backend, DB, Cache), die kommunizieren:
docker network create myapp
docker run -d --network myapp --name api my-api
docker run -d --network myapp --name db postgres
Container im selben Netz reden per Container-Name statt per IP (z. B. api statt 10.0.0.5). Das ist die Basis für Microservices-Kommunikation.
Schritt 5: Docker Compose
Manuelle Kommandos werden repetitiv und fehleranfällig. Docker Compose definiert alle Container deklarativ in einer Datei:
services:
api:
build: .
ports:
- '3000:3000'
depends_on:
- db
db:
image: postgres:16
volumes:
- db-data:/var/lib/postgresql/data
volumes:
db-data:
docker compose up # alles starten
docker compose down # alles aufräumen
Compose erstellt das Netzwerk automatisch. Das ist der Einstieg in Configuration-as-Code — ein Kernprinzip von DevOps.
Schritt 6: Volumes (Daten persistieren)
Container sind ephemeral — bei Löschung sind die Daten weg. Das ist für Datenbanken fatal.
Docker Volumes sind die persistente Brücke:
- Ein Volume = dedizierter Speicherbereich auf dem Host, verbunden mit einem Container-Pfad.
- Container weg → Daten bleiben. Neuer Container → ans selbe Volume angeschlossen → alle Daten wieder da.
Im Compose-Beispiel oben ist db-data bereits als Volume definiert — so bleibt alles „as code".
Schritt 7: Produktions-Best-Practices
| Best Practice | Warum |
|---|---|
Exakte Image-Tags statt latest | latest ändert sich jederzeit — bricht Produktion über Nacht |
| RUN-Befehle kombinieren | Weniger Layer = kleineres Image, kleinere Angriffsfläche |
| Multi-Stage-Builds | Von 1 GB auf unter 100 MB — nur das Nötige ins Final-Image |
| Nicht als Root laufen | Root = Admin-Rechte für jeden Exploit; dedizierter User |
| Images regelmäßig scannen | Neue CVEs täglich; Docker Scout im CI/CD einbinden |
Der natürliche nächste Schritt: Kubernetes
Bei Hunderten Containern scheitern Docker und Docker Compose — es fehlen Auto-Restart, Skalierung, Rolling Updates und Load Balancing. Genau dafür ist Kubernetes da: der Orchestrator, der Container über Hunderte Server automatisch verwaltet.
| Kriterium | Docker / Compose | Kubernetes |
|---|---|---|
| Skalierung | Manuell, begrenzt | Automatisch (HPA, Cluster-Autoscaler) |
| Auto-Restart | Compose-Ebene, begrenzt | Self-Healing, gewünschter Zustand |
| Rolling Updates | Nein | Ja, mit Rollbacks |
| Load Balancing | Basic | Built-in (Services, Ingress) |
| Geeignet für | Einzelne Services, kleine Apps | Hunderte Container, HA, Multi-Cloud |
Docker-Grundlagen sind das Fundament, auf dem Kubernetes aufsetzt — wer Images, Volumes und Networking versteht, versteht, was der Orchestrator automatisiert.
Lessons Learned aus der Praxis
- Geduld mit den Grundlagen: Wissenslücken rächen sich später. Ein solides Fundament macht alles Weitere einfacher.
latestist eine Zeitbombe: Immer exakte Tags in Produktion — nielatest.- Volumes nicht vergessen: Ohne Persistenz sind Daten weg, sobald der Container stirbt.
- Sicherheit beginnt im Image: Root-Verbot, Multi-Stage, Scans — nicht erst in Produktion denken.
- Docker ist nicht für alles: Bei Skalierung braucht es Kubernetes — und dessen Betrieb ist eine eigene Disziplin.
Fazit
Docker ist der Einstieg in die Containerisierung — und die Roadmap ist klar strukturiert:
- Pull & Run — fertige Images sofort nutzen.
- Eigenes Dockerfile — das Rezept für Ihr Image.
- Networking & Compose — mehrere Container als Code.
- Volumes — Daten überleben Container-Neustarts.
- Produktions-Best-Practices & Kubernetes — vom Container zur betriebenen Plattform.
FAQ
Muss ich Docker lernen, bevor ich Kubernetes lerne? Ja, zumindest die Konzepte (Images, Container, Volumes, Networking). Kubernetes baut direkt auf Docker-Containern auf.
Was ist der größte Anfängerfehler? latest-Tags und vergessene Volumes. Beides führt zu brüchigen oder datenverlierenden Setups.
Reicht Docker für unser Unternehmen? Für einzelne Services oder kleine Apps: oft ja. Für Skalierung, HA und viele Workloads: Kubernetes. Eine ehrliche Einordnung schützt vor unnötiger Komplexität.
Was ist der Unterschied zwischen Image und Container? Ein Image ist die unveränderliche Blaupause, ein Container die laufende Instanz davon. Aus einem Image können viele Container entstehen.
Verwandte Artikel
📖 Verwandte Artikel
Weitere interessante Beiträge zu ähnlichen Themen
Docker Administration Deutschland: Security & Monitoring
Docker Administration Deutschland: Security härten, Monitoring aufsetzen, Image-Lifecycle automatisieren & Storage verwalten. Praxis-Guide für Enterprise-Teams.
Podman vs Docker: Rootless Container & Kubernetes
Podman und Docker im Vergleich: Rootless Container, daemonlose Architektur, Kubernetes-Integration und Migration-Guide mit praktischen Beispielen.
Netzwerk-Grundlagen für DevOps & Kubernetes: die Fundamente, die jeder beherrschen muss
Netzwerk-Grundlagen für DevOps & Kubernetes: IP, DNS, Ports, Routing & Network Policies. Vom physischen Server über Cloud, Docker bis zum K8s-Cluster — in 5 Phasen erklärt.
Freelancer vs Managed Service: Kubernetes-Betrieb Kosten-Vergleich (2026)
Freelancer vs Managed Service für Kubernetes ehrlich verglichen: Versteckte Kosten, Wissenssilo-Risiko, fehlende SLAs, Break-Even-Analyse für den Mittelstand.
Blue-Green Deployment Kubernetes: Zero-Downtime Guide (2026)
Blue-Green Deployment in Kubernetes: Zero-Downtime-Anleitung mit kompletten YAML-Beispielen, Traffic-Switching per Service, Rollback-Strategie und Canary-Vergleich.
Helm Charts für Anfänger: Kubernetes-Pakete erstellen (2026)
Helm Charts für Anfänger: Charts verstehen, CLI-Befehle nutzen, erstes Chart erstellen. Vollständiger Guide für Kubernetes-Paketmanagement mit YAML-Beispielen.
Canary Deployment Kubernetes: Argo Rollouts Anleitung
Canary Deployments mit Argo Rollouts einrichten: Graduelle Rollouts, A/B-Tests und automatischer Rollback in 30 Sekunden für sichere Releases.
Agentic AI auf Kubernetes: Was in der Praxis zählt
Agentic AI auf Kubernetes: Warum K8s das Substrat bleibt, welche Schichten (Inference bis Agents) zählen und wo Sandbox, Scheduling und Kosten knifflig werden.