Docker-Befehle: Spickzettel mit Compose
Docker-Befehle zum Nachschlagen: Container, Images, Volumes, Netzwerke und docker compose, gruppiert nach Aufgabe. Suchen Sie nach einem Stichwort und kopieren Sie den Befehl direkt.
66 Einträge
Container starten
docker run -it --rm ubuntu bashInteraktiv starten, nach dem Beenden automatisch entfernendocker run -d --name web -p 8080:80 nginxIm Hintergrund starten; Port 8080 auf dem Host zeigt auf Port 80 im Containerdocker run -d --restart unless-stopped nginxContainer nach Neustart von Docker automatisch wieder startendocker run -e TZ=Europe/Berlin alpine dateUmgebungsvariable setzendocker run --env-file .env meinappUmgebungsvariablen aus einer Datei ladendocker run -v "$(pwd)":/app -w /app node:20 npm testAktuelles Verzeichnis einbinden und als Arbeitsverzeichnis nutzen (Bind Mount)docker run -v daten:/var/lib/postgresql/data postgresBenanntes Volume einbinden, Daten bleiben beim Löschen des Containers erhaltendocker run --network meinnetz meinappContainer in einem eigenen Netzwerk startendocker run --memory 512m --cpus 1.5 meinappArbeitsspeicher und CPU begrenzenContainer verwalten
docker psLaufende Container anzeigendocker ps -aAlle Container anzeigen, auch gestopptedocker stop webContainer anhalten (SIGTERM, nach 10 Sekunden SIGKILL)docker start webGestoppten Container wieder startendocker restart webContainer neu startendocker rm webGestoppten Container löschendocker rm -f webContainer löschen, auch wenn er noch läuftdocker container pruneAlle gestoppten Container löschendocker rename web web-altContainer umbenennendocker exec -it web shShell im laufenden Container öffnen (bash, falls vorhanden)docker logs -f --tail 100 webDie letzten 100 Logzeilen anzeigen und weiter mitlesendocker inspect webAlle Details als JSON: Netzwerk, Volumes, Umgebungdocker cp web:/etc/nginx/nginx.conf .Datei aus dem Container kopieren (umgekehrt auch hinein)docker statsCPU, Speicher und Netzwerk aller laufenden Container livedocker top webProzesse im Container anzeigendocker port webPortweiterleitungen des Containers anzeigenImages
docker imagesLokale Images anzeigen (gleichbedeutend mit docker image ls)docker pull nginx:alpineImage aus der Registry ladendocker build -t meinapp:1.0 .Image aus dem Dockerfile im aktuellen Verzeichnis bauendocker build -f Dockerfile.prod -t meinapp:prod .Anderes Dockerfile verwendendocker build --no-cache -t meinapp .Ohne Build-Cache neu bauendocker tag meinapp:1.0 registry.example.com/meinapp:1.0Image für eine andere Registry benennendocker login registry.example.comBei einer Registry anmeldendocker push registry.example.com/meinapp:1.0Image in die Registry hochladendocker rmi meinapp:1.0Image löschen (gleichbedeutend mit docker image rm)docker image pruneUnbenannte Images (dangling) löschendocker image prune -aAlle Images löschen, die von keinem Container genutzt werdendocker history meinapp:1.0Schichten des Images mit Größe anzeigendocker save -o meinapp.tar meinapp:1.0Image als Datei exportierendocker load -i meinapp.tarImage aus Datei importierenVolumes und Netzwerke
docker volume lsVolumes anzeigendocker volume create datenVolume anlegendocker volume inspect datenSpeicherort und Details eines Volumesdocker volume rm datenVolume löschen (Daten sind danach weg)docker volume pruneUngenutzte Volumes löschendocker network lsNetzwerke anzeigendocker network create meinnetzEigenes Bridge-Netzwerk anlegen; Container erreichen sich darin per Namedocker network connect meinnetz webLaufenden Container mit einem Netzwerk verbindendocker network inspect meinnetzVerbundene Container und Adressbereich anzeigendocker compose
docker compose up -dAlle Dienste aus compose.yaml im Hintergrund startendocker compose up -d --buildImages vorher neu bauen und startendocker compose downDienste stoppen und Container sowie Netzwerk entfernendocker compose down -vWie down, löscht zusätzlich die Volumesdocker compose psStatus der Dienstedocker compose logs -f appLogs eines Dienstes mitlesendocker compose exec app shShell in einem laufenden Dienst öffnendocker compose run --rm app npm testEinmaligen Befehl in einem neuen Container des Dienstes ausführendocker compose pullNeue Versionen der Images ladendocker compose restart appDienst neu startendocker compose configZusammengeführte Konfiguration prüfen und ausgebenSystem und Aufräumen
docker system dfBelegten Speicher von Images, Containern, Volumes und Cachedocker system pruneGestoppte Container, ungenutzte Netzwerke, dangling Images und Build-Cache löschendocker system prune -a --volumesGründlich aufräumen inklusive aller ungenutzten Images und Volumes (Vorsicht)docker builder pruneBuild-Cache leerendocker versionVersion von Client und Serverdocker infoSysteminformationen: Speicher-Treiber, Anzahl Containerdocker context lsDocker-Kontexte (lokal, entfernte Hosts) anzeigenKein Eintrag gefunden. Versuchen Sie einen anderen Begriff oder wählen Sie „Alle Gruppen“.
Alles läuft in Ihrem Browser. Eingaben verlassen Ihr Gerät nicht.
Docker Befehle Liste für den Alltag
Der Docker Spickzettel enthält 66 Befehle für den Alltag: Container starten und verwalten, Images bauen und hochladen, Volumes und Netzwerke sowie docker compose für mehrere Dienste. Suchen Sie nach einem Stichwort wie „logs“ oder „löschen“ und kopieren Sie den Befehl. Platzhalter wie web, meinapp oder daten ersetzen Sie durch Ihre Namen.
Ein häufiger Fall ist „Docker Container löschen“: docker rm entfernt einen gestoppten Container, docker rm -f auch einen laufenden, und docker container prune räumt alle gestoppten auf. Volumes bleiben dabei erhalten. Erst docker volume rm oder docker compose down -v löschen die Daten darin. Schauen Sie vor großem Aufräumen mit docker system df, wie viel Platz belegt ist.
Die Befehle folgen der aktuellen Docker-CLI mit Compose v2, also docker compose mit Leerzeichen statt des älteren docker-compose. Lange docker run-Zeilen lassen sich mit dem Werkzeug docker run in Compose umwandeln in eine compose.yaml übertragen. Dieses Docker Cheat Sheet ersetzt keine Dokumentation, deckt aber die meisten täglichen Aufgaben ab.
Anleitung: Docker-Befehle in 3 Schritten
- Im Feld „Suchen“ ein Stichwort wie logs, volume oder prune eingeben.
- Unter „Gruppe“ einen Bereich wie Container starten, Images oder docker compose wählen.
- Mit „Kopieren“ den Befehl übernehmen und Namen wie web oder meinapp durch Ihre eigenen ersetzen.
Typische Anwendungsfälle
- Fehlersuche im Container: Logs mitlesen, eine Shell öffnen oder Details mit docker inspect ansehen.
- Speicher freigeben: Die passenden prune-Befehle finden, um gestoppte Container, ungenutzte Images und Volumes zu entfernen.
- Compose-Projekte verwalten: Dienste starten, neu bauen und Logs ansehen, ohne die Optionen auswendig zu kennen.
- Image veröffentlichen: Bauen, Taggen und Hochladen in eine Registry in der richtigen Reihenfolge nachschlagen.
Häufige Fragen
Wie lösche ich alle gestoppten Docker-Container?
Mit docker container prune. Einen einzelnen Container entfernen Sie mit docker rm name; läuft er noch, mit docker rm -f name. Volumes bleiben dabei bestehen.
Was ist der Unterschied zwischen docker compose und docker-compose?
docker compose (mit Leerzeichen) ist Compose v2 und als Plugin Teil der Docker-CLI. docker-compose mit Bindestrich ist die ältere, eigenständige Version 1, die nicht mehr weiterentwickelt wird. Die Unterbefehle sind weitgehend gleich.
Wie komme ich in einen laufenden Container?
Mit docker exec -it name sh oder, falls das Image Bash enthält, docker exec -it name bash. Schlanke Images wie Alpine haben meist nur sh.
Wie viel Speicher belegt Docker?
docker system df zeigt den Platz für Images, Container, Volumes und Build-Cache. Mit docker system prune räumen Sie Ungenutztes auf; -a --volumes löscht deutlich mehr und sollte nur bewusst eingesetzt werden.
Was bedeutet -p 8080:80?
Die erste Zahl ist der Port auf Ihrem Rechner, die zweite der Port im Container. Mit -p 8080:80 erreichen Sie den Webserver im Container unter http://localhost:8080. Welche Dienste üblicherweise welche Ports nutzen, zeigt die Port-Liste.
Wie räume ich Docker komplett auf?
docker system prune -a --volumes löscht gestoppte Container, ungenutzte Netzwerke, alle nicht verwendeten Images, den Build-Cache und ungenutzte Volumes. Die Daten in diesen Volumes sind danach weg; prüfen Sie vorher mit docker system df, was betroffen ist.
Wie zeige ich die Umgebungsvariablen eines Containers an?
Bei einem laufenden Container mit docker exec web env. Unabhängig vom Zustand zeigt docker inspect web die beim Start gesetzten Variablen im Abschnitt Config.Env.
Das könnte auch helfen
HTTP-Statuscodes
Alle gängigen HTTP-Statuscodes von 100 bis 511 mit Bedeutung, typischer Ursache und Suche.
ÖffnenHTTP-Header-Referenz
Wichtige Anfrage- und Antwort-Header mit Bedeutung und Beispiel, durchsuchbar.
ÖffnenMIME-Typen
Über 150 MIME-Typen nachschlagen: Dateiendung zu Content-Type und umgekehrt.
ÖffnenGit-Befehle
Git-Spickzettel: die wichtigsten Befehle nach Aufgaben gruppiert, durchsuchbar und kopierbar.
ÖffnenBash-Befehle
Bash- und Linux-Befehle für Dateien, Text, Prozesse und Netzwerk, mit Suche und Kopieren.
ÖffnenPort-Liste
Bekannte TCP- und UDP-Ports von 20 bis 51820 mit Dienst und Hinweis, durchsuchbar.
Öffnen