Docker · Reference
Inspect & exec cheat sheet
Compressed facts from lesson 0003. Keep open while debugging.
Jobs
| Command | Does |
|---|---|
docker inspect |
Low-level JSON (config, state, networks) |
inspect -f '…' |
Go template — print one field / slice |
docker exec |
New command in a running container |
exec -it … sh |
Interactive shell (−i STDIN, −t TTY) |
Debug ladder
docker ps/ps -a— running or exited?docker logs name— stdout / stderr of main processdocker inspect name— full config / statedocker exec …— live filesystem / processes inside
Commands
# Running container required for exec
docker run -d -p 8080:80 --name lesson3 nginx:alpine
# Blueprint
docker inspect lesson3
docker inspect -f '{{.Config.Image}}' lesson3
docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' lesson3
docker inspect -f '{{json .Config}}' lesson3
# Inside (must be running)
docker exec lesson3 ls /usr/share/nginx/html
docker exec -it lesson3 sh
# exit leaves main process running
docker stop lesson3 && docker rm lesson3
Rules of thumb
- inspect works on stopped containers; exec does not.
- exec is a side process — not attach to PID 1; not restarted with the container.
- Command must be an executable; use
sh -c "…"for shell chains. exitfrom exec shell ≠docker stop.
From lesson 0003 · Sources: inspect, exec