cli-tool
containerization
cross-platform
development
devops
intermediate
Docker Befehle
📋 Copy All Commands
📄 Generate PDF
Umfassende Docker-Befehle und Workflows für Containerisierung auf allen Plattformen.
Grundlegende Befehle
Befehl
Beschreibung
docker --version
Docker-Version anzeigen
docker info
Systemweite Informationen anzeigen
docker help
Hilfe für Docker-Befehle anzeigen
docker images
Alle Bilder auflisten
docker ps
Liste laufender Container
docker ps -a
Alle Container auflisten (laufende und gestoppte)
docker pull <image>
Image aus Registry ziehen
docker run <image>
Einen Container aus einem Image ausführen
docker stop <container>
Einen laufenden Container stoppen
docker start <container>
Einen gestoppten Container starten
docker restart <container>
Container neu starten
docker rm <container>
Container entfernen
docker rmi <image>
Ein Bild entfernen
## Container-Verwaltung
Befehl
Beschreibung
docker run -d <image>
Container im Hintergrundmodus ausführen
docker run -it <image>
Container interaktiv ausführen
docker run -p 8080:80 <image>
Port 8080 auf Container-Port 80 abbilden
docker run -v /host:/container <image>
Volume mounten
docker run --name <name> <image>
Container mit benutzerdefiniertem Namen ausführen
docker exec -it <container> bash
Bash in laufendem Container ausführen
docker logs <container>
Container-Logs anzeigen
docker logs -f <container>
Container-Logs folgen
docker inspect <container>
Container-Details überprüfen
docker stats
Container-Ressourcennutzung anzeigen
docker top <container>
Laufende Prozesse im Container anzeigen
## Image-Verwaltung
Befehl
Beschreibung
docker build -t <name> .
Image aus Dockerfile erstellen
docker build -t <name>:<tag> .
Image mit Tag erstellen
docker tag <image> <new-name>
Ein Bild markieren
docker push <image>
Image in Registry pushen
docker save <image> > file.tar
Bild in tar-Datei speichern
docker load < file.tar
Bild aus tar-Datei laden
docker history <image>
Bildverlauf anzeigen
docker search <term>
Nach Bildern in Registry suchen
## Docker Compose
Befehl
Beschreibung
docker-compose up
Dienste starten, die in der Compose-Datei definiert sind
docker-compose up -d
Dienste im Detached-Modus starten
docker-compose down
Container stoppen und entfernen
docker-compose build
Services erstellen oder neu aufbauen
docker-compose logs
Protokolle für alle Services anzeigen
docker-compose ps
Container auflisten
docker-compose exec <service> bash
Befehl im Service ausführen
docker-compose pull
Pull neueste Images
docker-compose restart
Services neu starten
## Netzwerk-Verwaltung
Befehl
Beschreibung
docker network ls
Netzwerke auflisten
docker network create <name>
Netzwerk erstellen
docker network rm <name>
Netzwerk entfernen
docker network inspect <name>
Netzwerkdetails überprüfen
docker run --network <name> <image>
Container auf bestimmtem Netzwerk ausführen
## Volume-Verwaltung
Befehl
Beschreibung
docker volume ls
Volumes auflisten
docker volume create <name>
Ein Volume erstellen
docker volume rm <name>
Ein Volume entfernen
docker volume inspect <name>
Details des Volumes überprüfen
docker volume prune
Nicht verwendete Volumes entfernen
## Häufige Workflows
Entwicklungs-Workflow
# Build and run application
docker build -t myapp .
docker run -p 3000 :3000 myapp
# Development with volume mounting
docker run -p 3000 :3000 -v $( pwd ) :/app myapp
# Using Docker Compose for development
docker-compose up --build
Produktions-Bereitstellung
# Build production image
docker build -t myapp:prod .
# Tag for registry
docker tag myapp:prod registry.com/myapp:latest
# Push to registry
docker push registry.com/myapp:latest
# Deploy on production server
docker pull registry.com/myapp:latest
docker run -d -p 80 :3000 --name myapp-prod registry.com/myapp:latest
Container-Debugging
# Check container logs
docker logs -f container-name
# Execute shell in running container
docker exec -it container-name bash
# Inspect container configuration
docker inspect container-name
# Check resource usage
docker stats container-name
Best Practices
Dockerfile-Optimierung
Verwenden Sie Multi-Stage-Builds zur Reduzierung der Image-Größe
Nutzen Sie Build-Cache durch korrektes Anordnen von Anweisungen
Verwenden Sie spezifische Base-Image-Tags, vermeiden Sielatest
Minimieren Sie die Anzahl der Layer
Verwenden Sie.dockerignorezum Ausschließen unnötiger Dateien
Sicherheit
Führen Sie Container als Nicht-Root-Benutzer aus
Verwenden Sie offizielle Base-Images wenn möglich
Aktualisieren Sie Base-Images regelmäßig
Scannen Sie Images auf Sicherheitslücken
Begrenzen Sie Container-Ressourcen (CPU, Arbeitsspeicher)
Verwenden Sie passende Base-Images (alpine für kleinere Größe)
Optimieren Sie Layer-Caching
Verwenden Sie Health Checks für Container
Überwachen Sie Container-Ressourcennutzung
Verwenden Sie Volumes für persistente Daten
Produktions-Bereitstellung
Verwenden Sie Orchestrierungstools (Docker Swarm, Kubernetes)
Implementieren Sie ordnungsgemäßes Logging und Monitoring
Nutzen Sie Secrets-Management für sensible Daten
Richten Sie automatische Backups ein
Implementieren Sie Rolling Updates