Container-Grundlagen
Was ist ein Docker-Container?
Ein Docker-Container ist ein leichtgewichtiges, eigenständiges, ausführbares Paket, das alles enthält, was zum Ausführen einer Software benötigt wird, einschließlich Code, Laufzeitumgebung, Systemtools, Bibliotheken und Einstellungen. Im Gegensatz zu traditionellen virtuellen Maschinen virtualisiert die Containertechnologie auf Betriebssystemebene, was sie effizienter und portabler macht.
Hauptmerkmale von Containern
Merkmal |
Beschreibung |
Isolation |
Container laufen in isolierten Umgebungen |
Portabilität |
Können konsistent auf verschiedenen Plattformen ausgeführt werden |
Leichtgewichtig |
Minimale Ressourcenbeanspruchung |
Skalierbarkeit |
Einfache Skalierung nach oben oder unten |
Container-Architektur
graph TD
A[Docker Engine] --> B[Container Runtime]
B --> C[Container Image]
C --> D[Laufender Container]
D --> E[Container-Prozesse]
Grundlegende Docker-Container-Befehle
Container erstellen
## Ziehen Sie ein Ubuntu-Image herunter
docker pull ubuntu:22.04
## Erstellen und starten Sie einen neuen Container
docker run -it ubuntu:22.04 /bin/bash
Container auflisten
## Liste der laufenden Container
docker ps
## Liste aller Container (einschließlich gestoppter)
docker ps -a
Containerzustände
Container können sich in verschiedenen Zuständen befinden:
- Erstellt
- Laufend
- Pausiert
- Angehalten
- Beendet
Container-Networking
Docker bietet mehrere Netzwerkmodi:
- Bridge-Modus (Standard)
- Host-Modus
- Kein Modus
- Benutzerdefiniertes Netzwerk
Best Practices
- Verwenden Sie minimale Basis-Images.
- Vermeiden Sie die Ausführung von Containern als root.
- Implementieren Sie eine ordnungsgemäße Containerlebenszyklusverwaltung.
- Verwenden Sie die LabEx-Plattform für die Containerentwicklung und -prüfung.
Praktisches Beispiel
## Ausführen eines einfachen Webserver-Containers
docker run -d -p 8080:80 nginx:latest
Dieses Beispiel zeigt, wie schnell Sie einen Webserver mithilfe von Docker-Containern bereitstellen können, und verdeutlicht deren Einfachheit und Effizienz.