Skip to content

Docker Befehle Spickzettel

Docker ist eine Open-Source-Anwendungs-Container-Engine, mit der Entwickler ihre Anwendungen und Abhängigkeiten in ein portables Image packen können, das dann auf jedem gängigen Linux- oder Windows-Rechner veröffentlicht werden kann. Auch Virtualisierung kann damit erreicht werden. Container verwenden vollständig einen Sandbox-Mechanismus und haben keine Schnittstellen untereinander.

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

Build Images

Ein Image aus einem Dockerfile im aktuellen Verzeichnis erstellen

docker build --tag myimage . 

Die Neuerstellung eines Images erzwingen

docker build --no-cache . 
ドイツ语```

Einen Container in ein Image umwandeln (Commit)
```bash
docker commit c7337 myimage 

Alle ungenutzten Images löschen

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

Debug

In einen laufenden Container einloggen

docker exec -it c7337 docker

Aktivitätsprotokolle eines laufenden Daemon-Containers anzeigen

docker logs -f c7337

Die freigegebenen Ports eines Containers anzeigen

docker port c7337

Volumes

Ein lokales Volume erstellen

docker volume create --name myvol 

Ein Volume beim Start eines Containers einbinden (Mounten)

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 

Einen Container beim Start mit einem Netzwerk verbinden

docker run -d --net mynet redis

Einen Container mit einem bestimmten Netzwerk verbinden

docker network connect mynet c7337 

Trennen der Verbindung eines Containers vom Netzwerk

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

Abfrage eines laufenden Containers mit bestimmten Metadaten

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

Beschreibung

Image-Name

redis, jenkins, nginx

Container-Name oder Commit-ID

mydb  # Container-Name 
c7337 # Commit-ID