Grundlagen von Docker-Images
Docker-Images verstehen
Docker-Images sind grundlegende Bausteine der Containertechnologie und dienen als schreibgeschützte Vorlagen zur Erstellung von Containern. Diese leichten, portablen Einheiten kapseln Anwendungscode, Laufzeitumgebung, Bibliotheken und Systemtools und ermöglichen eine konsistente Bereitstellung in verschiedenen Computing-Umgebungen.
Aufbau und Schichten von Images
Docker-Images bestehen aus mehreren schreibgeschützten Schichten, die übereinander gestapelt sind:
graph TD
A[Basis-Image] --> B[Anwendungsschicht]
B --> C[Konfigurationsschicht]
C --> D[Laufzeit-Schicht]
Schichttyp |
Beschreibung |
Zweck |
Basis-Image |
Minimales Betriebssystem |
Bietet die Kern-Systemumgebung |
Anwendungsschicht |
Anwendungsdateien |
Enthält Quellcode und Abhängigkeiten |
Konfigurationsschicht |
Umgebungseinstellungen |
Definiert Laufzeitkonfigurationen |
Erstellen Ihres ersten Docker-Images
Hier ist ein Beispiel für die Erstellung eines einfachen Ubuntu-basierten Images:
## Dockerfile erstellen
FROM ubuntu:22.04
LABEL maintainer="[email protected]"
## Systempakete aktualisieren
RUN apt-get update && apt-get upgrade -y
## Python installieren
RUN apt-get install -y python3 python3-pip
## Arbeitsverzeichnis festlegen
WORKDIR /app
## Anwendungsdateien kopieren
COPY . /app
## Standardbefehl definieren
CMD ["python3", "app.py"]
Dieses Dockerfile demonstriert wichtige Konzepte der Imageerstellung:
- Auswahl eines Basis-Images
- Aktualisierung der Systempakete
- Installation von Abhängigkeiten
- Konfiguration der Arbeitsumgebung
Prinzipien der Imageverwaltung
Docker-Images sind unveränderlich und können:
- lokal erstellt werden
- aus Remote-Registern gezogen werden
- innerhalb von Entwicklungsteams geteilt werden
Durch das Verständnis der Grundlagen von Images können Entwickler effiziente, reproduzierbare Containerumgebungen erstellen, die die Softwarebereitstellung und Skalierung optimieren.