Docker tahák
Docker tahák
Na support01 spouštějte Docker se sudo (vynechte ho, pokud je váš uživatel
ve skupině docker).
Kontejnery
| Úkol | Příkaz |
|---|
| Spustit na pozadí a publikovat port | sudo docker run -d --name web -p 8080:80 nginx:1.27 |
| Spustit interaktivně, po skončení smazat | sudo docker run -it --rm busybox sh |
| Výpis běžících / všech | sudo docker ps / sudo docker ps -a |
| Logy, sledovat průběžně | sudo docker logs -f web |
| Shell do běžícího kontejneru | sudo docker exec -it web sh |
| Stop / start / restart | sudo docker stop web / start web / restart web |
| Smazat (vynuceně) | sudo docker rm -f web |
| Procesy, živé statistiky | sudo docker top web / sudo docker stats |
| Kompletní detail v JSON | sudo docker inspect web |
| Jedno pole z inspectu | sudo docker inspect -f '{{.NetworkSettings.IPAddress}}' web |
| Omezit zdroje | sudo docker run -d --memory 128m --cpus 0.5 nginx:1.27 |
Image
| Úkol | Příkaz |
|---|
| Hledat / stáhnout | sudo docker search nginx / sudo docker pull nginx:1.27 |
| Výpis / smazání | sudo docker images / sudo docker rmi nginx:1.27 |
| Historie vrstev | sudo docker history nginx:1.27 |
| Build z Dockerfile | sudo docker build -t myapp:1.0 . |
| Tag / push | sudo docker tag myapp:1.0 registry/myapp:1.0 / push |
| Uložit / načíst tar | sudo docker save -o myapp.tar myapp:1.0 / load -i myapp.tar |
Sítě
| Úkol | Příkaz |
|---|
| Výpis sítí | sudo docker network ls |
| Vytvořit vlastní síť | sudo docker network create appnet |
| Připojit při spuštění | sudo docker run -d --network appnet --name db mysql:8 |
| Připojit / odpojit později | sudo docker network connect appnet web / disconnect |
| Host / žádná síť | --network host / --network none |
Kontejnery na stejné uživatelsky vytvořené síti se najdou podle jména.
Na výchozím bridge ne.
Volumes a mounty
| Úkol | Příkaz |
|---|
| Vytvořit / vypsat / detail | sudo docker volume create data / ls / inspect data |
| Pojmenovaný volume | sudo docker run -d -v data:/var/lib/mysql mysql:8 |
| Bind mount adresáře hostitele | sudo docker run -d -v /srv/site:/usr/share/nginx/html:ro nginx:1.27 |
| Smazat nepoužívané | sudo docker volume prune |
Úklid
sudo docker rm -f $(sudo docker ps -aq)
sudo docker system df
sudo docker system prune -a
Reference
docs.docker.com/reference/cli/docker