Docker ist eine Open-Source-Plattform zur Containerisierung von Anwendungen. Sie ermöglicht es, Software samt aller Abhängigkeiten in sogenannten Containern zu verpacken und plattformunabhängig auszuführen. Diese Container sind leichtgewichtig, schnell startbar und ideal für moderne Entwicklungs- und Deployment-Prozesse geeignet.
Grundprinzip
Docker verwendet Container, um Anwendungen vom darunterliegenden System zu isolieren. Dadurch können verschiedene Anwendungen mit unterschiedlichen Anforderungen auf demselben Host laufen – ohne Konflikte oder manuelle Konfiguration.
Wichtige Begriffe
- Image: Eine Vorlage für Container – definiert z. B. über ein Dockerfile
- Container: Laufende Instanz eines Images
- Dockerfile: Skript zur Erstellung eines Images mit definierten Befehlen
- Docker Hub: Öffentliche Registry zum Teilen und Abrufen von Images
Vorteile
- Portabilität: Container laufen überall gleich – lokal, im Rechenzentrum oder in der Cloud
- Schneller Start: Container benötigen keine lange Bootzeit
- Skalierbarkeit: Ideal für Microservices-Architekturen
- Ressourcenschonend: Kein komplettes Betriebssystem nötig wie bei virtuellen Maschinen
Einsatzbereiche
- Softwareentwicklung und -tests
- CI/CD-Pipelines in DevOps-Umgebungen
- Betrieb containerisierter Anwendungen in der Cloud