Open Source Projekte

Was ist Docker? – Container-Technologie einfach erklärt

Docker ist eine Open-Source-Plattform zur Containerisierung. Der Beitrag erklärt, wie Docker funktioniert, warum es so effizient ist und wie du ein eigenes Projekt startest.

1 min Lesezeit
Was ist Docker? – Container-Technologie einfach erklärt

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.