Container-basierte Anwendungsbereitstellung umfasst in der Praxis eine Vielzahl von Aufgaben - von der Erstellung von Container-Images über das Netzwerk-Management bis hin zur Orchestrierung verteilter Anwendungen. Docker hat sich als De-facto-Standard für die Containerisierung von Software etabliert und ist aus modernen DevOps- und Cloud-native-Umgebungen nicht wegzudenken. Ein fundiertes Verständnis der Docker-Architektur, des Image-Buildprozesses und der Laufzeitkonfiguration ist Voraussetzung für den produktiven Einsatz.

Kursinhalt
1. Docker-Architektur und Containerkonzepte
  • Docker Engine, Daemon und Client-Server-Architektur
  • Unterschied zwischen Containern und virtuellen Maschinen
  • Docker Hub und Image-Registries

2. Images erstellen und verwalten
  • Dockerfile: Syntax, Layer-Konzept und Build-Prozess
  • Multi-Stage Builds und Image-Optimierung
  • Tagging, Versionierung und Image-Lifecycle

3. Container-Laufzeit und Netzwerkkonfiguration
  • Container starten, stoppen und inspecten
  • Netzwerkmodi: Bridge, Host, Overlay
  • Volumes und Datenpersistenz in Containern

4. Docker Compose und Multi-Container-Anwendungen
  • docker-compose.yml: Aufbau und Dienste-Definition
  • Service-Abhängigkeiten und Health-Checks
  • Umgebungsvariablen und Konfigurationsmanagement

Berufliche Relevanz
  • Docker ist Voraussetzung für Cloud-native-Entwicklung und Container-Orchestrierung mit Kubernetes
  • Ermöglicht reproduzierbare Build- und Deployment-Prozesse
  • Grundlage für CI/CD-Pipelines und Microservices-Architekturen