Training Module
Docker & Kubernetes: Vom Compose-Stack zum lokalen Cluster
In diesem 2¼-Stunden-Modul steigt ihr von Docker in Kubernetes ein: warum es
Orchestrierung überhaupt braucht, die Aufteilung in Control Plane und Worker Nodes,
und der Pod als kleinste Einheit. Danach geht es praktisch weiter mit Minikube und
dem docker-Treiber – ein “Container-in-Container”-Cluster ganz ohne
virtuelle Maschine, ein erstes Deployment und ein NodePort-Service. Inhaltlicher
Kern ist die Migration eines bestehenden Monitoring-Stacks aus Grafana, InfluxDB
und Telegraf per kompose convert von Compose nach Kubernetes. Zum
Abschluss das Kubernetes Dashboard, lokales Ingress-Routing unter einer eigenen
Domain, und ein konzeptioneller Ausblick auf Managed Kubernetes bei AWS, Azure und
Google Cloud. Die komplette Session – auch die Hands-on-Übung – läuft vollständig
lokal über Minikube auf eurem eigenen Rechner, ohne Cloud-Account und ohne
Kostenwirkung.
Format
Ca. 2 Stunden 15 Minuten, live (remote oder vor Ort), Input & Hands-on
Teilnehmende
Absolvent:innen von “Docker Fortgeschritten” oder gleichwertige Vorkenntnisse
Voraussetzungen
Sicherer Umgang mit compose.yaml sowie eine lauffähige lokale Docker-Umgebung (Docker Desktop, OrbStack oder Colima) mit ausreichend freien Ressourcen für einen Minikube-Cluster. Keine Cloud-/AWS-Kostenwirkung – der komplette Cluster läuft lokal über Minikube mit dem Docker-Treiber.
Warum dieses Training für deine Organisation wirkt
Vom Einzel-Host zum Cluster
Docker Compose orchestriert Container auf einem Host. Kubernetes löst die nächste Frage: automatischer Neustart, Lastverteilung und unterbrechungsfreie Updates über mehrere Knoten hinweg – mit Control Plane und Worker Nodes als Grundarchitektur und dem Pod als kleinster Einheit.
Migration statt Neubau
Der Kern des Trainings: Ein bestehender Monitoring-Stack aus Grafana,
InfluxDB und Telegraf wird nicht neu geschrieben, sondern per
kompose convert aus einer vorhandenen compose.yaml
nach Kubernetes migriert – der realistischste Einstiegspfad für Teams, die
schon mit Compose arbeiten.
Praxis ohne Risiko
Der komplette Cluster läuft über Minikube mit dem docker-Treiber
als isolierter Container auf eurem eigenen Rechner. Kein eigener Cloud-Account,
keine Kostenwirkung – inklusive Dashboard und eigenem lokalen Domain-Routing
per Ingress.
Was Teilnehmende mitnehmen
- Warum Kubernetes über Docker Compose hinaus gebraucht wird, und wie Control Plane (
kube-apiserver,etcd,kube-scheduler,kube-controller-manager) und Worker Nodes (kubelet, Container Runtime,kube-proxy) zusammenspielen. - Den Pod als kleinste Einheit einordnen: geteilte IP-Adresse, geteilter Port-Bereich, geteilte Volumes – und warum in der Praxis fast immer genau ein Container pro Pod läuft.
- Einen lokalen Single-Node-Cluster mit
minikube start –driver=dockerhochfahren, ein erstes Deployment samt NodePort-Service deklarativ über YAML anlegen und mitkubectlprüfen. - Einen bestehenden Grafana/InfluxDB/Telegraf-Monitoring-Stack per
kompose convertvoncompose.yamlnach Kubernetes migrieren, die generierten Deployments/Services lesen und gezielt per NodePort erreichbar machen. - Das Kubernetes Dashboard als grafische Oberfläche für Workloads, Logs und Pod-Details nutzen.
- Lokales Ingress-Routing unter eigenen Domains (
my-app.local,grafana.local) über den Nginx-Ingress-Controller undminikube tunnelaufsetzen, statt mit wechselnden Zufalls-Ports zu arbeiten. - Ressourcen sauber wieder freigeben (
minikube stop/minikube delete) und den kompletten Stack rein aus den eigenen YAML-Dateien heraus reproduzieren. - Managed Kubernetes bei AWS EKS, Azure AKS und Google GKE konzeptionell einordnen – als Ausblick, nicht als eigenes Hands-on.
Für wen dieses Modul ideal ist
- • Absolvent:innen von “Docker Fortgeschritten” oder Entwickler:innen mit gleichwertigen Compose-Vorkenntnissen
- • Teams, die einen bestehenden Compose-Stack Richtung Kubernetes migrieren wollen, statt bei null anzufangen
- • Alle, die Kubernetes-Grundbegriffe (Pod, Deployment, Service, Ingress) erstmals selbst anwenden statt nur nachlesen wollen
Rahmendaten
- • Dauer: ca. 2 Stunden 15 Minuten live (remote oder vor Ort)
- • Format: Input, Live-Demo, Hands-on-Übung mit eigenem Minikube-Cluster
- • Voraussetzungen: abgeschlossenes Modul “Docker Fortgeschritten” oder gleichwertige Compose-Vorkenntnisse, lauffähige lokale Docker-Umgebung, keine Cloud-Kostenwirkung
Modulaufbau & Agenda
Warum Kubernetes? Control Plane, Worker Nodes, Pod-Konzept (25 min): die Grenze von Docker Compose, die Kernkomponenten der Control Plane und der Worker Nodes, der Pod als kleinste deklarative Einheit.
Minikube lokal mit Docker-Treiber, erstes Deployment + NodePort-Service (35 min):
minikube start –driver=docker,kubectl cluster-info, ein Deployment mit zwei Replicas samt NodePort-Service deklarativ über YAML anlegen und mitkubectl get pods/deployment/servicesowieminikube serviceprüfen.Von Compose zu Kubernetes: kompose-Migration eines Monitoring-Stacks (30 min, Kern, Hands-on): einen Grafana/InfluxDB/Telegraf-Stack aus einer bestehenden
compose.yamlperkompose convertnach Kubernetes migrieren, die generierten Manifeste lesen, anwenden und Grafana per NodePort erreichbar machen.Dashboard & lokales Ingress-Routing mit eigener Domain (30 min): das Kubernetes Dashboard als Add-on aktivieren, den Nginx-Ingress-Controller aktivieren und zwei Domains (
my-app.local,grafana.local) per Ingress-Manifest undminikube tunnellokal erreichbar machen.Ausblick: Managed Kubernetes EKS/AKS/GKE (15 min, konzeptionell): wie Amazon EKS, Azure AKS und Google GKE die Control Plane verwalten, Serverless-Knoten (Fargate), automatische Cloud-Integration von LoadBalancer-Services und globales Ingress-Routing – als Einordnung, kein eigenes Hands-on.
Eine ehrliche Swarm-vs.-Kubernetes-Einordnung, konzeptionell und ohne Verkaufsargument in die eine oder andere Richtung, ist bereits Teil von Docker Sicherheit & Orchestrierung mit Swarm. Dieses Modul setzt keine Swarm-Kenntnisse voraus und wiederholt diese Einordnung nicht, sondern beginnt direkt praktisch mit Kubernetes.
Wer Control Plane, Worker Nodes, Raft/Quorum und den API-Call-Flow noch nie gehört hat, ist im 90-Minuten-Einstiegsmodul Kubernetes Einführung — der erste Blick unter die Haube besser aufgehoben – dort werden diese Grundbegriffe erklärt, die dieses Aufbaumodul hier bereits voraussetzt.
Installationsüberschneidung mit dem Einstiegsmodul
Kubernetes: Minikube, kubectl & Kubeconfig
(dort ebenfalls Minikube/kubectl im Ordner mein-k8s-projekt,
ohne die Voraussetzung “Docker Fortgeschritten”) – wer Namespace-Handling,
kubectl-Debugging (logs/exec/
port-forward) und die Objekthierarchie noch nicht geübt hat, findet
das dort vertieft. Dieses Aufbaumodul hier setzt direkt bei der
kompose-Migration eines echten Compose-Stacks an, statt diese
Grundlagen zu wiederholen.
Deployment-Mechanik (Rolling Update, Rollback, Skalierung), Health-Checks mit liveness-/readiness-/startupProbe sowie ConfigMap und Secret werden in diesem Modul nur so weit behandelt, wie es für die kompose-Migration nötig ist – vertieft werden sie im Modul Kubernetes Workloads & Konfiguration — die Objekte für den Alltag.
Hands-on Inhalte (Auszug)
Architektur & erstes Deployment
- Control Plane (API-Server, etcd, Scheduler, Controller Manager) und Worker Nodes (kubelet, Container Runtime, kube-proxy) im Zusammenspiel
- Minikube als isolierter “Container-in-Container”-Cluster über den
docker-Treiber, ganz ohne eigene VM - Ein Deployment mit zwei Replicas und ein NodePort-Service, deklarativ in YAML beschrieben und per
kubectl applyangewendet
kompose-Migration (Kern-Hands-on)
- Einen Drei-Dienste-Stack (Grafana, InfluxDB, Telegraf) aus
compose.yamlperkompose convertautomatisch in Kubernetes-Manifeste übersetzen - Verstehen, warum
komposefür Dienste ohneports:-Eintrag bewusst keinen Service anlegt (nur ein Deployment) - Die generierten Deployments anwenden und Grafana gezielt per
kubectl expose –type=NodePortvon außen erreichbar machen
Dashboard & Ingress
- Das Kubernetes Dashboard als Add-on aktivieren und Workloads, Pod-Details und Live-Logs grafisch einsehen
- Den Nginx-Ingress-Controller als Add-on aktivieren und zwei Ingress-Regeln für zwei unterschiedliche Domains anlegen
minikube tunnelund die lokale Hosts-Datei nutzen, ummy-app.localundgrafana.localüber Port 80 statt wechselnder Zufalls-Ports zu erreichen
Aufräumen & Ausblick
minikube stopvs.minikube delete– Cluster pausieren oder restlos entfernen- Den kompletten Stack rein aus den eigenen YAML-Dateien heraus in Sekunden wiederherstellen
- Amazon EKS, Azure AKS und Google GKE konzeptionell eingeordnet: Managed Control Plane, Serverless-Knoten, automatische Cloud-Integration – ohne eigenen Cloud-Account in dieser Session
Dieses Modul ist Teil unserer Pilotphase. Gemeinsam mit euch definieren wir passende Metriken (z. B. Zeit bis zum lauffähigen Cluster, Ergebnis der kompose-Migration) und werten sie im Anschluss transparent aus. Ergebnisse veröffentlichen wir, sobald sie belastbar sind.
Bereit, das Modul zu buchen?
Wir passen die Hands-on-Übung auf euren Erfahrungsstand und eure Zielumgebung an.
Academy Briefing anfragen