Site icon bintorosoft.com

Docker Troubleshooting Cheat Sheet: Die wichtigsten Befehle

Close up human hand is playing Online Game computer using keyboard in home

Docker kann in komplexen Umgebungen schnell unübersichtlich werden, besonders wenn Container nicht starten, Netzwerke nicht funktionieren oder Volumes plötzlich voll sind. Ein kompaktes Cheat Sheet mit den wichtigsten Befehlen hilft Einsteigern und Profis, Probleme schnell zu identifizieren und zu beheben. Dieses Tutorial bietet eine strukturierte Übersicht über die essenziellen Docker- und Docker Compose-Kommandos für das tägliche Troubleshooting.

Container-Status prüfen

Um herauszufinden, welche Container laufen oder gestoppt wurden, sind folgende Befehle essenziell:

# Beispiel: laufende Container anzeigen
docker ps

Details eines Containers

docker inspect my_container

Echtzeit-Ressourcenverbrauch

docker stats

Exit Codes und Logs

Wenn ein Container exited, ist es wichtig, Logs und Exit-Codes zu prüfen:

# Logs eines Containers anzeigen
docker logs -f my_container

Exit-Code prüfen

docker inspect my_container --format '{{.State.ExitCode}}'

Netzwerk-Probleme identifizieren

Container-Kommunikation kann durch fehlerhafte Netzwerke blockiert sein. Die wichtigsten Kommandos:

# Netzwerke anzeigen
docker network ls

Netzwerkdetails

docker network inspect my_network

Verbindung testen

docker exec -it web_container ping db_container

Bridge, Host und Overlay

Bridge ist der Standard für lokale Container, Host nutzt den Host-Netzwerkstack, Overlay ist für Swarm/Kubernetes-Setups gedacht. Prüfen Sie die Netzwerkkonfiguration bei Verbindungsproblemen.

Volumes und Storage überprüfen

Volumes können durch falsche Bind-Mounts oder vollen Speicher Probleme verursachen:

# Volumes auflisten
docker volume ls

Details eines Volumes

docker volume inspect my_volume

Speicherbelegung prüfen

docker system df

Permission-Fehler

UID/GID-Mismatches zwischen Host und Container können Schreibprobleme verursachen. Prüfen Sie Besitzer und Rechte auf den gemounteten Verzeichnissen:

# Rechte prüfen
ls -l /path/to/volume

Ports und Bindings prüfen

Port-Konflikte verhindern, dass Services erreichbar sind:

# Port-Mappings anzeigen
docker port web_container

System-Portprüfung

ss -tulpn | grep 8080

Docker Compose Befehle

Compose-Stacks erfordern zusätzliche Befehle:

# Compose-Stack starten
docker-compose up -d

Logs anzeigen

docker-compose logs -f

Stack herunterfahren

docker-compose down

Override und Environment

Nutzen Sie docker-compose.override.yml für Entwicklungsanpassungen und .env-Dateien für Umgebungsvariablen:

# Compose mit Override starten
docker-compose -f docker-compose.yml -f docker-compose.override.yml up -d

Ressourcen und Limits prüfen

CPU- und RAM-Limits können Throttling verursachen:

# CPU/Memory Limits prüfen
docker inspect my_container --format '{{.HostConfig.NanoCpus}} {{.HostConfig.Memory}}'

Cleanup und Systempflege

Regelmäßige Bereinigung verhindert, dass Volumes, Images oder Container den Server blockieren:

# System bereinigen
docker system prune -a
docker volume prune
docker network prune

Debugging Tipps

Beispiel Healthcheck

services:
  web:
    image: myapp:latest
    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost:80"]
      interval: 30s
      retries: 3

Mit diesem Cheat Sheet haben Teams und Administratoren eine kompakte Übersicht über die wichtigsten Docker- und Compose-Befehle für Troubleshooting. Von Logs über Netzwerke, Volumes, Ports bis zu Ressourcen und Cleanup – alle relevanten Bereiche werden abgedeckt, um Probleme schnell zu erkennen und zu beheben.

Konfiguriere Cisco Router & Switches und liefere ein Packet-Tracer-Lab/GNS3

Ich biete professionelle Unterstützung im Bereich Netzwerkkonfiguration und Network Automation für private Anforderungen, Studienprojekte, Lernlabore, kleine Unternehmen sowie technische Projekte. Ich unterstütze Sie bei der Konfiguration von Routern und Switches, der Erstellung praxisnaher Topologien in Cisco Packet Tracer, dem Aufbau und Troubleshooting von GNS3- und EVE-NG-Labs sowie bei der Automatisierung von Netzwerkaufgaben mit Netmiko, Paramiko, NAPALM und Ansible. Kontaktieren Sie mich jetzt – klicken Sie hier.

Meine Leistungen umfassen:

Benötigen Sie Unterstützung bei Ihrem Netzwerkprojekt, Ihrer Simulation oder Ihrer Network-Automation-Lösung? Kontaktieren Sie mich jetzt – klicken Sie hier.

Exit mobile version