
Um zu verstehen, wie Kubernetes mit Docker zusammenarbeitet, hilft ein Vergleich aus der Logistik: Wenn Docker die standardisierte Übersee-Box (der Container) ist, dann ist Kubernetes der Kran und das Logistikzentrum im Hafen.
1. Was macht Docker eigentlich?
Bevor es Docker gab, war es oft ein Albtraum, Software von einem Rechner auf einen anderen zu übertragen („Auf meinem PC lief es aber!“). Docker löst das, indem es die Anwendung und alles, was sie zum Überleben braucht (Bibliotheken, Einstellungen), in ein Image verpackt.
Aus diesem Image wird ein Container gestartet. Dieser ist:
- Isoliert: Er weiß nichts von anderen Prozessen auf dem Rechner.
- Leichtgewichtig: Er teilt sich den Betriebssystem-Kern mit anderen Containern, was ihn viel schneller macht als eine virtuelle Maschine (VM).
2. Das Zusammenspiel: Docker vs. Kubernetes
Man muss sich nicht zwischen beiden entscheiden – sie arbeiten meistens Hand in Hand.
- Docker baut und startet den einzelnen Container auf einem einzelnen Server.
- Kubernetes übernimmt, sobald du viele Container auf vielen Servern verwalten musst.
Docker verpackt es, Kubernetes verwaltet es.
| Aufgabe | Wer macht es? |
| Die App in ein Paket verpacken | Docker |
| Den Container auf Knopfdruck starten | Docker |
| Entscheiden, auf welchem Server noch Platz für den Container ist | Kubernetes |
| Einen neuen Container starten, wenn einer abstürzt | Kubernetes |
| Den Datenverkehr (Traffic) auf 10 identische Container verteilen | Kubernetes |
3. Der Workflow in der Praxis
So sieht ein typischer Ablauf aus, wenn eine Firma wie Apporto ihre Software ausliefert:
- Build: Ein Entwickler schreibt Code und nutzt Docker, um daraus ein „Image“ zu erstellen (z. B.
mein-app-v1). - Ship: Dieses Image wird in eine Bibliothek (Registry) hochgeladen.
- Run: Der Administrator sagt zu Kubernetes: „Bitte lass 3 Instanzen von
mein-app-v1laufen.“ - Manage: Kubernetes schaut in die Registry, holt sich das Docker-Image und verteilt es auf die verfügbaren Server im Cluster.
4. Ein wichtiges technisches Detail (CRI)
Früher war Docker der einzige Standard, den Kubernetes genutzt hat. Heute ist Kubernetes etwas „erwachsener“ geworden und nutzt ein Interface namens CRI (Container Runtime Interface). Das bedeutet, Kubernetes kann theoretisch auch andere Container-Technologien (wie containerd oder CRI-O) nutzen.
Aber: Da Docker-Images dem offenen OCI-Standard entsprechen, bleibt Docker das wichtigste Werkzeug für Entwickler, um diese Pakete überhaupt erst zu schnüren.
Kurz gesagt: Docker erstellt die „Pakete“, und Kubernetes ist das „Gehirn“, das entscheidet, wo und wie diese Pakete weltweit verteilt und betrieben werden.


You must be logged in to post a comment.