Training Module
Docker Sicherheit & Orchestrierung mit Swarm
In diesem 2¼-Stunden-Modul geht es zunächst um sichere Software-Bezugswege:
das Risiko von curl | sh, die Herkunft von Images und warum
ein –insecure-Flag nie dauerhaft in einem Skript landen
sollte. Der inhaltliche Kern – Container-Härtung und Rechte-Eskalation,
inklusive einer Hands-on-Übung, in der ihr einen absichtlich unsicheren
Stack gegen eine Musterlösung abgleicht. Danach der Einstieg in
Orchestrierung: die Swarm-Architektur, eine ehrliche Einordnung Swarm vs.
Kubernetes, und zum Abschluss – als konzeptioneller Ausblick, nicht als
eigenes Hands-on – Stateful- vs. Stateless-Services, Placement Constraints
und eine Referenzarchitektur über einen Fünf-Node-Cluster. Die
Härtungs-Übung läuft komplett lokal und rein skriptbasiert, ganz ohne
Cloud-Account und ohne Kostenwirkung.
Format
Ca. 2 Stunden 15 Minuten, live (remote oder vor Ort), Input, Live-Demo & Hands-on
Teilnehmende
Absolvent:innen von “Docker Fortgeschritten” und “Docker Betrieb” oder gleichwertige Vorkenntnisse
Voraussetzungen
Sicherer Umgang mit compose.yaml und Dauerbetrieb-Grundlagen (Restart-Policies, Ressourcenlimits, Registries) aus den beiden Vorgängermodulen. Keine Cloud-/AWS-Kostenwirkung – die Härtungs-Übung läuft rein skriptbasiert.
Warum dieses Training für deine Organisation wirkt
Vertrauen ist keine Kontrolle
Ein Installer-Skript per curl | sh auszuführen oder ein Image aus unbekannter Quelle zu pullen, fühlt sich schnell und harmlos an – bis es das nicht mehr ist. Dieses Training macht sichere Bezugswege zur Routine, nicht zur Ausnahme.
Vom Container zum Rechte-Eskalationspfad
Der Kern des Trainings: welche einzelnen, unscheinbaren Konfigurationsentscheidungen – ein gemountetes docker.sock, ein fehlendes read_only, ein Klartext-Passwort – aus einem kompromittierten Container einen kompromittierten Host machen, und wie ihr das per Skript statt durch Zufall findet.
Orchestrierung ehrlich eingeordnet
Swarm-Architektur und eine nüchterne Swarm-vs.-Kubernetes-Einordnung, ohne Verkaufsargument in die eine oder andere Richtung – plus ein konzeptioneller Blick auf Stateful/Stateless-Placement anhand einer echten Referenzarchitektur.
Was Teilnehmende mitnehmen
- Das Risiko von
curl | sh-Installern einordnen und eine sicherere Alternative (Skript erst herunterladen, prüfen, dann ausführen; signierte Paketquellen) anwenden. - Image-Herkunft bewerten: offizielle Images, Verified-Publisher-Kennzeichnung, gepinnte Digests statt
:latestoder loser Tags. - Warum ein
–insecure-Flag (curl -k,–no-check-certificate,insecure-registries) nie dauerhaft in einem Skript oder einer Pipeline landen sollte. - Container härten: Capabilities droppen,
no-new-privileges,read_only-Root-Dateisystem mittmpfs, ein fester Non-Root-user:. - Den
docker.sock-Mount als Rechte-Eskalationspfad erkennen und in einer Hands-on-Übung einen unsicheren Stack gegen eine Musterlösung abgleichen – rein skriptbasiert percheck_stack_security.py. - Die Swarm-Architektur einordnen: Manager-/Worker-Nodes, Raft-Konsens, Services/Tasks, Overlay-Netzwerk, Routing-Mesh – und eine ehrliche Swarm-vs.-Kubernetes-Abwägung.
- Stateful- vs. Stateless-Services und Placement Constraints konzeptionell verstehen, anhand einer Referenzarchitektur (Live-Demo, kein eigenes Hands-on in diesem Modul).
Für wen dieses Modul ideal ist
- • Absolvent:innen von “Docker Fortgeschritten” und “Docker Betrieb” oder Teams mit gleichwertigen Vorkenntnissen im Dauerbetrieb
- • Teams, die einzelne Container bereits sicher betreiben, aber Härtung und Rechte-Eskalation bisher nicht strukturiert angefasst haben
- • Alle, die den ersten Schritt Richtung Orchestrierung einordnen wollen, bevor sie sich für Swarm oder Kubernetes entscheiden
Rahmendaten
- • Dauer: ca. 2 Stunden 15 Minuten live (remote oder vor Ort)
- • Format: Input, Live-Demo, skriptbasierte Härtungs-Übung mit Musterlösungs-Abgleich
- • Voraussetzungen: abgeschlossene Module “Docker Fortgeschritten” und “Docker Betrieb” oder gleichwertige Vorkenntnisse, lauffähige Docker-Umgebung, keine Cloud-Kostenwirkung
Modulaufbau & Agenda
Begrüßung & Format (5 min): Rückblick auf “Docker Fortgeschritten” und “Docker Betrieb”, Ausblick auf die vier Module.
Sichere Software-Bezugswege (20 min): das Risiko von
curl | sh, Image-Herkunft (offizielle Images, Verified Publisher, gepinnte Digests), warum–insecurekein Dauerzustand sein darf.Container-Härtung & Rechte-Eskalation (40 min, Kern, inkl. Hands-on): Capabilities,
no-new-privileges,read_only/tmpfs, Non-Root-user:, derdocker.sock-Mount als Eskalationspfad – Hands-on-Abgleichstack-insecure.ymlgegenstack-fixed.yml.Warum Orchestrierung? Swarm-Architektur, Swarm vs. Kubernetes (30 min): Manager-/Worker-Nodes, Raft-Konsens, Services/Tasks, Overlay-Netzwerk, Routing-Mesh, ehrliche Einordnung gegenüber Kubernetes.
Orchestrierung in der Praxis (40 min, konzeptionell/Live-Demo): Stateful vs. Stateless, Placement Constraints, eine Photo-Diary-Referenzarchitektur über einen Fünf-Node-Cluster – als Live-Demo eingeordnet, kein eigenes Teilnehmenden-Hands-on in diesem Modul.
Die hier nur konzeptionelle Swarm-vs.-Kubernetes-Einordnung wird im Modul Docker & Kubernetes: Vom Compose-Stack zum lokalen Cluster zum eigenen Hands-on: Control Plane/Worker-Architektur, ein erstes Deployment mit Minikube und die Migration eines Monitoring-Stacks per kompose convert.
Die hier nur konzeptionell/als Live-Demo gezeigte Swarm-Praxis – Cluster-Aufbau, Stack-Deployment, Skalierung und Placement Constraints – wird im Modul Docker Swarm Hands-on: Vom Cluster-Aufbau zum produktiven Stack zum eigenen Hands-on: ein selbst aufgebauter Swarm-Cluster, ein Mehrdienste-Stack mit MongoDB-Replica-Set per docker stack deploy, Skalierung im laufenden Betrieb und eine Placement Constraint an einer echten Datenbank-Instanz.
Hands-on Inhalte (Auszug)
Sichere Bezugswege
- Ein Installer-Skript erst herunterladen und prüfen, statt es direkt per Pipe an die Shell zu übergeben
- Image-Digests statt loser Tags referenzieren
–insecure-Flags als bewussten, befristeten Kompromiss statt Dauerzustand behandeln
Container-Härtung (Kern-Hands-on)
- Fünf eingebaute Sicherheitsfehler in
stack-insecure.ymlper Skript statt durch Hochstarten finden check_stack_security.pygegen die Musterlösungstack-fixed.ymllaufen lassen – funktioniert komplett ohne laufenden Docker-Daemon- docker.sock-Mount, Klartext-Secrets, fehlendes read_only/user, offener DB-Port, Netzwerk ohne
internal: trueim Detail durchgehen
Swarm-Architektur
- Manager- und Worker-Nodes, Raft-Konsens für die Cluster-Verwaltung
- Services und Tasks als Swarms Grundbausteine,
docker stack deploy - Overlay-Netzwerk und Routing-Mesh im Zusammenspiel
Orchestrierung in der Praxis
- Stateful- vs. Stateless-Services und was das für Placement bedeutet
- Placement Constraints anhand von Node-Labels
- Photo-Diary-Referenzarchitektur über fünf Nodes – konzeptionell/Live-Demo, nicht selbst hochgefahren
Dieses Modul ist Teil unserer Pilotphase. Gemeinsam mit euch definieren wir passende Metriken (z. B. Zeit bis zur gefundenen Härtungslücke, Ergebnis der Hands-on-Übung) 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