A mindennapokban használt Docker-parancsok, feladatonként csoportosítva: image-ek építése és mozgatása, konténerek futtatása és leállítása, a docker run finomhangolása flagekkel, logok és statisztikák olvasása, belépés a konténerbe, fájlok másolása és registryk használata, volume-ok és hálózatok kezelése, a Compose vezérlése, és lemezterület visszanyerése.
A Docker két objektumból áll: image-ek (a csak olvasható sablon) és konténerek (egy image futó példánya). Építesz vagy letöltesz egy image-et, konténerként futtatod, megnézed, mi történik, majd takarítasz. A legtöbben a Compose eszközzel írják le a többkonténeres alkalmazásokat. Az alábbi parancsok mindegyikének van rövid alakja; a hosszú alakot ott mutatjuk, ahol az egyértelműbb.
Referenciatáblázat · 75 bejegyzés
Docker parancsokExplained
75 of 75 rows
Build
Image építése egy Dockerfile-ból.
docker build -t app:1.0 .
Az image újraépítése a nulláról, a gyorsítótárazott rétegek mellőzésével.
docker build --no-cache -t app:1.0 .
Csak egy megnevezett stage-ig való építés egy multi-stage Dockerfile-ban.
docker build --target deps -t app:deps .
Image-ek építése a buildx pluginon keresztül, amely a BuildKitet vezérli.
Várakozás, amíg a konténer leáll, majd a kilépési kód kiírása.
docker wait web
Futó konténerek listázása; -a hozzáadásával a leállítottak is.
docker ps -a
Új név adása egy meglévő konténernek.
docker rename web web-old
A konténer erőforrás-limitjeinek vagy újraindítási szabályának módosítása.
docker update --restart=unless-stopped web
Leállított konténer eltávolítása.
docker rm web
Futtatási flagek
A konténer futtatása a háttérben és az azonosítójának kiírása.
docker run -d -p 8080:80 app
Konténerport közzététele egy host-porton.
docker run -p 8080:80 app
Host-mappa vagy nevesített volume csatolása a konténerbe.
docker run -v app-data:/data app
Környezeti változó beállítása a konténerben.
docker run -e MODE=prod app
Rögzített név adása a konténernek a későbbi parancsokhoz.
docker run --name web app
A konténer törlése, amikor kilép.
docker run --rm app
A konténer indítása egy adott hálózaton.
docker run --network net app
Megmondja a Dockernek, mikor indítsa újra a konténert.
docker run --restart unless-stopped app
Terminál lefoglalása és stdin nyitva tartása interaktív munkamenethez.
docker run -it alpine sh
Az image entrypointjának cseréje saját parancsra.
docker run --entrypoint sh app
A konténer által használható memória- vagy CPU-megosztás korlátozása.
docker run --memory 512m --cpus 0.5 app
Vizsgálat
Konténer stdout- és stderr-kimenetének olvasása; az -f követi az új kimenetet, ahogy érkezik.
docker logs -f web
Egy konténer vagy image alacsony szintű beállításainak és állapotának megjelenítése.
docker inspect web
Egyetlen mező kiemelése az inspectból Go-sablonnal.
docker inspect --format '{{.State.Status}}' web
A konténer által közzétett host-portok listázása.
docker port web
A konténer által módosított fájlok megjelenítése az image-hez képest.
docker diff web
Élő CPU-, memória- és hálózati adatok a futó konténerekről.
docker stats
A konténerben futó folyamatok listázása.
docker top web
A daemon Docker-eseményeinek streamezése valós időben.
docker events --filter type=container
Az image-ek, konténerek, volume-ok és gyorsítótár által használt lemezterület megjelenítése.
docker system df
A Docker rendszerszintű beállításainak és állapotának megjelenítése.
docker info
Exec és attach
Parancs futtatása egy futó konténerben.
docker exec -it web sh
Terminálod csatlakoztatása a konténer fő folyamatához.
docker attach web
Fájlok és registry
Fájlok másolása egy konténer és a helyi fájlrendszer között.
docker cp web:/app/logs ./logs
Bejelentkezés egy registrybe a parancssorból.
docker login
Kijelentkezés egy registryből.
docker logout
Helyi image feltöltése egy registrybe.
docker push user/app:1.0
Image kiírása egy tar-fájlba.
docker save -o app.tar app:1.0
Image beolvasása egy tar-fájlból.
docker load -i app.tar
Konténer fájlrendszerének kiírása egy tar-fájlba.
docker export web > web.tar
Image létrehozása egy tar-fájlrendszerből.
docker import web.tar web:snap
A konténer aktuális állapotának új image-vé alakítása.
docker commit web app:snap
Volume-ok
Nevesített volume létrehozása tartós adatoknak.
docker volume create data
Volume-ok listázása.
docker volume ls
Volume eltávolítása.
docker volume rm data
Hálózatok
Hálózatok listázása.
docker network ls
Hálózat létrehozása, hogy a konténerek elérjék egymást.
docker network create net
Futó konténer csatlakoztatása egy hálózathoz.
docker network connect net web
Compose
A compose.yaml szolgáltatásainak felépítése, (újra)létrehozása és indítása; a -d háttérben futtatva hagyja őket.
docker compose up -d
A szolgáltatások indítása és az image-eik előzetes újraépítése.
docker compose up --build -d
Parancs futtatása egy futó szolgáltatáskonténerben.
docker compose exec api sh
Egy vagy több szolgáltatás naplóinak követése.
docker compose logs -f api
A Compose által kezelt szolgáltatáskonténerek listázása.
docker compose ps
A szolgáltatáskonténerek leállítása eltávolítás nélkül.
docker compose stop
A szolgáltatáskonténerek újraindítása.
docker compose restart api
Konténerek és hálózatok leállítása és eltávolítása; a -v a nevesített volume-okat is eltávolítja.
docker compose down
A végső Compose-konfiguráció megjelenítése az egyesítések és a környezeti változók helyettesítése után.
docker compose config
Takarítás
Leállított konténerek, dangling image-ek és nem használt hálózatok eltávolítása; az -a --volumes a nem használt image-eket és volume-okat is eltávolítja.
docker system prune -af
Az összes leállított konténer eltávolítása.
docker container prune
Nem használt vagy dangling image-ek eltávolítása.
docker image prune -a
Volume-ok eltávolítása, amelyeket egy konténer sem használ.
docker volume prune
Hálózatok eltávolítása, amelyeket egy konténer sem használ.