Docker-cheat-sheet: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
Die Seite wurde neu angelegt: „;Alle Container stoppen docker stop $(docker ps -q) ;Alle Container löschen docker rm $(docker ps -aq)“ |
Keine Bearbeitungszusammenfassung |
||
| (Eine dazwischenliegende Version desselben Benutzers wird nicht angezeigt) | |||
| Zeile 1: | Zeile 1: | ||
== Docker Cheat-Sheet (Deutsch) == | |||
=== Docker-Dienste verwalten === | |||
* Docker starten, stoppen, Status prüfen: | |||
systemctl start docker | |||
systemctl stop docker | |||
systemctl status docker | |||
=== Container anzeigen, stoppen und löschen === | |||
* Nur aktive Container anzeigen: | |||
docker ps | |||
* Alle Container anzeigen (aktiv & inaktiv): | |||
docker ps -a | |||
* Letzten erstellten Container anzeigen: | |||
docker ps -l | |||
* Einzelnen Container stoppen: | |||
docker stop CONTAINER-ID | |||
* Alle Container stoppen: | |||
docker stop $(docker ps -a -q) | |||
* Alle gestoppten Container löschen: | |||
docker rm $(docker ps -q -f status=exited) | |||
* Alle Container löschen: | |||
docker rm $(docker ps -a -q) | |||
* Image löschen (force): | |||
docker rmi -f nginx:latest | |||
docker rmi -f mysql:latest solr:latest | |||
=== Netzwerk mit Docker nutzen === | |||
* Bridge-Netzwerk anlegen: | |||
docker network create -d bridge --subnet 10.0.0.1/24 my-network | |||
* Netzwerke anzeigen: | |||
docker network ls | |||
* Netzwerkdetails anzeigen: | |||
docker network inspect my-network | |||
* Bridge-Infos im Host prüfen: | |||
brctl show | |||
ip link show | |||
=== Container mit Netzwerk starten === | |||
* Zwei Container mit gemeinsamem Netzwerk: | |||
docker run -it -d --name web1 --network my-network -p 8080:80 nginx:stable-alpine | |||
docker run -it -d --name web2 --network my-network -p 5000:80 nginx:stable-alpine | |||
=== Ports, Volumes und Verzeichnisse === | |||
* Port zuweisen: | |||
docker run -d -p 8880:80 --name web nginx:latest | |||
* Volume mounten: | |||
docker run -d -p 8800:80 --name web -v /mnt/data:/usr/share/nginx/html nginx:latest | |||
* Komplett mit init: | |||
docker run -it -d --privileged --name apache_web -v /data/app:/var/www/html --restart=always -p 8070:80 apache /usr/sbin/init | |||
=== Dateien zwischen Host und Container kopieren === | |||
* Datei in Container kopieren: | |||
docker cp foo.txt mycontainer:/foo.txt | |||
* Datei aus Container holen: | |||
docker cp mycontainer:/foo.txt foo.txt | |||
* Verzeichnis in Container: | |||
docker cp src/. mycontainer:/target | |||
* Verzeichnis aus Container: | |||
docker cp mycontainer:/src/. target | |||
=== Container-Informationen === | |||
* Container-Logs anzeigen: | |||
docker logs CONTAINER-ID | |||
* In Container einloggen: | |||
docker exec -it CONTAINER /bin/bash | |||
* CPU-Auslastung anzeigen: | |||
docker stats | |||
* IP-Adresse des Containers: | |||
docker inspect CONTAINER | grep -i IPAddr | |||
* Port eines Containers anzeigen: | |||
docker port CONTAINERNAME | |||
* Formatierte IP-Adresse: | |||
docker inspect --format <nowiki>'{{.NetworkSettings.IPAddress}}'</nowiki> CONTAINERNAME | |||
=== Container-Ressourcen steuern === | |||
* CPU-Anteile mit --cpu-shares setzen: | |||
docker run -dit --cpu-shares 512 nginx | |||
* Bestimmten Core zuweisen: | |||
docker run -it --rm --cpuset=0 stress --cpu 1 | |||
* Mehrere Cores zuweisen: | |||
docker run -it --rm --cpuset=0,1 stress --cpu 2 | |||
=== Neustartverhalten von Containern === | |||
* Restart-Policy setzen: | |||
docker run -dit --restart unless-stopped redis | |||
* Weitere Optionen: | |||
- no | |||
- on-failure | |||
- unless-stopped | |||
- always | |||
* Container neustarten: | |||
docker restart CONTAINER-ID | |||
=== Images verwalten === | |||
* Image herunterladen: | |||
docker pull nginx:latest | |||
* Images anzeigen: | |||
docker image ls | |||
* Unbenutzte Images löschen: | |||
docker image prune -a | |||
* Nach Zeit filtern: | |||
docker image prune -a --force --filter "until=240h" | |||
* Neues Image aus Container: | |||
docker commit CONTAINER-ID | |||
* Image taggen: | |||
docker tag IMAGE-ID meinrepo/image:tag | |||
* Image testen: | |||
docker run -it centos7 /bin/ping google.com -c 5 | |||
=== Weitere hilfreiche Befehle === | |||
* STDIN offen halten: | |||
docker run -i web | |||
* Volume für MySQL: | |||
docker run -v /data/db:/var/lib/mysql db | |||
* Version prüfen: | |||
docker version | |||
* Systeminformationen: | |||
docker info | |||
* Init über CentOS-Basis: | |||
docker run -d --privileged -v /sys/fs/cgroup:/sys/fs/cgroup centos7 /usr/sbin/init | |||
=== Images suchen und analysieren === | |||
* Suche im Hub: | |||
docker search centos | |||
docker search nginx | |||
* Image-Historie: | |||
docker image history nginx | |||
* Image-Details: | |||
docker image inspect nginx | |||
* Image importieren: | |||
docker image import mytarfile.tar | |||
* Image exportieren: | |||
docker image save nginx > nginx.tar | |||
* Image laden: | |||
docker image load < nginx.tar | |||
</code> | |||
Aktuelle Version vom 8. Juni 2025, 16:11 Uhr
Docker Cheat-Sheet (Deutsch)
Docker-Dienste verwalten
- Docker starten, stoppen, Status prüfen:
systemctl start docker systemctl stop docker systemctl status docker
Container anzeigen, stoppen und löschen
- Nur aktive Container anzeigen:
docker ps
- Alle Container anzeigen (aktiv & inaktiv):
docker ps -a
- Letzten erstellten Container anzeigen:
docker ps -l
- Einzelnen Container stoppen:
docker stop CONTAINER-ID
- Alle Container stoppen:
docker stop $(docker ps -a -q)
- Alle gestoppten Container löschen:
docker rm $(docker ps -q -f status=exited)
- Alle Container löschen:
docker rm $(docker ps -a -q)
- Image löschen (force):
docker rmi -f nginx:latest docker rmi -f mysql:latest solr:latest
Netzwerk mit Docker nutzen
- Bridge-Netzwerk anlegen:
docker network create -d bridge --subnet 10.0.0.1/24 my-network
- Netzwerke anzeigen:
docker network ls
- Netzwerkdetails anzeigen:
docker network inspect my-network
- Bridge-Infos im Host prüfen:
brctl show ip link show
Container mit Netzwerk starten
- Zwei Container mit gemeinsamem Netzwerk:
docker run -it -d --name web1 --network my-network -p 8080:80 nginx:stable-alpine docker run -it -d --name web2 --network my-network -p 5000:80 nginx:stable-alpine
Ports, Volumes und Verzeichnisse
- Port zuweisen:
docker run -d -p 8880:80 --name web nginx:latest
- Volume mounten:
docker run -d -p 8800:80 --name web -v /mnt/data:/usr/share/nginx/html nginx:latest
- Komplett mit init:
docker run -it -d --privileged --name apache_web -v /data/app:/var/www/html --restart=always -p 8070:80 apache /usr/sbin/init
Dateien zwischen Host und Container kopieren
- Datei in Container kopieren:
docker cp foo.txt mycontainer:/foo.txt
- Datei aus Container holen:
docker cp mycontainer:/foo.txt foo.txt
- Verzeichnis in Container:
docker cp src/. mycontainer:/target
- Verzeichnis aus Container:
docker cp mycontainer:/src/. target
Container-Informationen
- Container-Logs anzeigen:
docker logs CONTAINER-ID
- In Container einloggen:
docker exec -it CONTAINER /bin/bash
- CPU-Auslastung anzeigen:
docker stats
- IP-Adresse des Containers:
docker inspect CONTAINER | grep -i IPAddr
- Port eines Containers anzeigen:
docker port CONTAINERNAME
- Formatierte IP-Adresse:
docker inspect --format '{{.NetworkSettings.IPAddress}}' CONTAINERNAME
Container-Ressourcen steuern
- CPU-Anteile mit --cpu-shares setzen:
docker run -dit --cpu-shares 512 nginx
- Bestimmten Core zuweisen:
docker run -it --rm --cpuset=0 stress --cpu 1
- Mehrere Cores zuweisen:
docker run -it --rm --cpuset=0,1 stress --cpu 2
Neustartverhalten von Containern
- Restart-Policy setzen:
docker run -dit --restart unless-stopped redis
- Weitere Optionen:
- no - on-failure - unless-stopped - always
- Container neustarten:
docker restart CONTAINER-ID
Images verwalten
- Image herunterladen:
docker pull nginx:latest
- Images anzeigen:
docker image ls
- Unbenutzte Images löschen:
docker image prune -a
- Nach Zeit filtern:
docker image prune -a --force --filter "until=240h"
- Neues Image aus Container:
docker commit CONTAINER-ID
- Image taggen:
docker tag IMAGE-ID meinrepo/image:tag
- Image testen:
docker run -it centos7 /bin/ping google.com -c 5
Weitere hilfreiche Befehle
- STDIN offen halten:
docker run -i web
- Volume für MySQL:
docker run -v /data/db:/var/lib/mysql db
- Version prüfen:
docker version
- Systeminformationen:
docker info
- Init über CentOS-Basis:
docker run -d --privileged -v /sys/fs/cgroup:/sys/fs/cgroup centos7 /usr/sbin/init
Images suchen und analysieren
- Suche im Hub:
docker search centos docker search nginx
- Image-Historie:
docker image history nginx
- Image-Details:
docker image inspect nginx
- Image importieren:
docker image import mytarfile.tar
- Image exportieren:
docker image save nginx > nginx.tar
- Image laden:
docker image load < nginx.tar