Einführung
In der modernen Softwareentwicklung ist Docker nicht mehr wegzudenken. Es ist ein Werkzeug, das Entwicklern, Systemadministratoren und DevOps-Teams hilft, Anwendungen schneller, konsistenter und portabler bereitzustellen. Aber was genau ist Docker eigentlich? Und warum ist es so beliebt?
In diesem Beitrag erfährst du:
- Was Docker ist und wie es funktioniert
- Welche Vorteile Container gegenüber virtuellen Maschinen haben
- Wie du Docker installierst
- Wie du dein erstes Docker-Container-Projekt startest
Was ist Docker?
Docker ist eine Open-Source-Plattform zur Containerisierung. Mit Docker kannst du Anwendungen und alle ihre Abhängigkeiten in sogenannten Containern bündeln. Diese Container laufen isoliert auf dem Betriebssystem, benötigen aber keine eigene virtuelle Maschine oder ein komplettes Gastbetriebssystem.
Was ist ein Container?
Ein Container ist eine leichtgewichtige, portable Umgebung für eine Anwendung. Er enthält:
- den Anwendungscode,
- Laufzeitumgebungen (wie Python, Node.js, PHP),
- Systemtools & Bibliotheken,
- aber kein vollständiges Betriebssystem.
Container starten in Sekunden und sind extrem ressourcenschonend.
Docker vs. Virtuelle Maschinen
| Eigenschaft | Docker Container | Virtuelle Maschine | | ------------------- | ---------------------------- | ---------------------- | | Startzeit | Sekunden | Minuten | | Ressourcenverbrauch | Gering | Hoch | | Betriebssystem | Teilt Kernel des Hosts | Eigenes Betriebssystem | | Portabilität | Sehr hoch | Gut | | Sicherheit | Isoliert (nicht vollständig) | Besser isoliert |
Docker installieren (Debian/Ubuntu)
```bash sudo apt update sudo apt install ca-certificates curl gnupg sudo install -m 0755 -d /etc/apt/keyrings curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
echo \ "deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian \ $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \ sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt update sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin ```
Dann den Docker-Dienst starten:
``bash sudo systemctl enable docker sudo systemctl start docker ``
Und prüfen mit:
``bash docker version ``
Dein erstes Docker-Projekt
1. Erstelle ein Projektverzeichnis
``bash mkdir mein-docker-projekt cd mein-docker-projekt ``
2. Erstelle eine Dockerfile
```Dockerfile
Dockerfile
FROM python:3.12-slim WORKDIR /app COPY . . RUN pip install flask CMD ["python", "app.py"] ```
3. Erstelle eine app.py
```python from flask import Flask app = Flask(name)
@app.route("/") def hello(): return "Hallo von Docker!"
if name == "main": app.run(host="0.0.0.0", port=5000) ```
4. Image bauen & Container starten
``bash docker build -t hallo-docker . docker run -p 5000:5000 hallo-docker ``
Deine App läuft nun unter http://localhost:5000.
Fazit
Docker hat die Art und Weise revolutioniert, wie Software entwickelt, getestet und bereitgestellt wird. Statt „auf meinem Rechner funktioniert es!“ bekommst du eine zuverlässige, portable und effiziente Umgebung für jede App.
Mit Docker kannst du:
- Entwicklungsumgebungen standardisieren,
- Microservices effizient orchestrieren,
- Continuous Integration & Deployment automatisieren.