Skip to content

Docker Befehls-Referenz (Cheat Sheet)

Docker ist eine Open-Source-Anwendungs-Container-Engine, die es Entwicklern ermöglicht, ihre Anwendungen und Abhängigkeiten in ein portables Image zu packen, das dann auf jedem gängigen Linux- oder Windows-Rechner veröffentlicht werden kann, wodurch eine Virtualisierung erreicht wird. Container nutzen einen Sandbox-Mechanismus und sind vollständig voneinander isoliert.

Allgemeine Verwendung

Einen Container im Hintergrund starten

docker run -d jenkins

Einen interaktiven Container starten

docker run -it ubuntu bash

Einen Container starten, der beim Stoppen automatisch gelöscht wird

docker run --rm ubuntu bash 

Einen Container mit Port-Mapping starten

docker run -p 80:80 -d nginx 

Einen benannten Container starten

docker run --name mydb redis 

Einen gestoppten Container starten

docker start mydb 

Einen Container stoppen

docker stop mydb

Einen Container starten und Metadaten hinzufügen

docker run -d \ label=traefik.backend=jenkins jenkins

Images bauen

Ein Image aus dem Dockerfile im aktuellen Verzeichnis erstellen

docker build --tag myimage . 

Neuerstellung eines Images erzwingen

docker build --no-cache . 

Einen Container in ein Image umwandeln

docker commit c7337 myimage 

Alle nicht verwendeten Images löschen

docker rmi $(docker images -q -f "dangling=true")

Debugging

Sich in einen laufenden Container einloggen

docker exec -it c7337 docker

Aktivitätsprotokolle eines als Daemon laufenden Containers anzeigen

docker logs -f c7337

Exponierte Ports des Containers anzeigen

docker port c7337

Volumes & Netzwerke

Ein lokales Volume erstellen

docker volume create --name myvol 

Ein Volume beim Start eines Containers einbinden

docker run -v myvol:/data redis

Ein Volume zerstören

docker volume rm myvol 

Alle Volumes auflisten

docker volume ls

Ein lokales Netzwerk erstellen

docker network create mynet 

Container beim Start mit dem Netzwerk verbinden

docker run -d --net mynet redis

Container mit einem bestimmten Netzwerk verbinden

docker network connect mynet c7337 

Verbindung eines Containers zum Netzwerk trennen

docker network disconnect mynet c7337

Container-Management

Laufende Container auflisten

docker ps

Alle Container auflisten (einschließlich laufender und gestoppter)

docker ps -a

Metadaten eines Containers inspizieren

docker inspect c7337

Alle lokal verfügbaren Images auflisten

docker images

Alle gestoppten Container löschen

docker rm $(docker ps --filter status=exited -q) 

Alle Container mit einem bestimmten Label auflisten

docker ps --filter label=traefik.backend

Die IP-Adresse eines laufenden Containers abfragen

docker inspect -f '{{ .NetworkSettings.IPAddress }}' c7337

Beschreibung

Image-Name

redis, jenkins, nginx

Container-Name oder Commit-ID

mydb  # Container-Name 
c7337 # Commit-ID