Skip to main content

🐳 Docker Commands Cheat Sheet

1. Docker Version & Info

CommandDescription
docker --versionShow Docker version
docker infoDisplay system-wide info
docker helpShow general help
docker <command> --helpHelp for specific command

2. Images

CommandDescription
docker imagesList local images
docker pull <image>Pull from registry
docker rmi <image>Remove image
docker tag <src> <target>Tag image
docker save -o file.tar <image>Save image to tar
docker load -i file.tarLoad image from tar

3. Containers

CommandDescription
docker psList running containers
docker ps -aList all containers (incl. stopped)
docker run <image>Run container (default foreground)
docker run -d <image>Run in detached mode
docker run -it <image> bashRun with interactive shell
docker stop <id>Stop container
docker start <id>Start stopped container
docker restart <id>Restart container
docker rm <id>Remove container
docker rm -f <id>Force remove running container
docker logs <id>View container logs
docker exec -it <id> bashOpen shell inside running container
docker inspect <id>Full container details

4. Build & Tag Images

CommandDescription
docker build -t myapp .Build image from Dockerfile
docker build -f Dockerfile.dev -t myapp .Build with custom Dockerfile
docker build --platform linux/amd64 -t myapp .Build for specific architecture
docker commit <container> <image:tag>Create image from container

5. Docker Compose

CommandDescription
docker compose upStart services (foreground)
docker compose up -dStart in background
docker compose downStop + remove services, network, volumes
docker compose psList compose containers
docker compose logs -fStream logs
docker compose buildBuild/rebuild services
  1. Check which container exist docker-compose ps -a

  2. How to run docker compose docker-compose up

  3. When you change the definition in docker-compose, need to re-run the container docker-compose down

✅ Works for both docker compose (v2+) and legacy docker-compose.


6. Volumes & Networks

CommandDescription
docker volume lsList volumes
docker volume rm <name>Remove volume
docker network lsList networks
docker network create <name>Create network
docker network inspect <name>Inspect network

7. Clean-up (Prune)

CommandDescription
docker system pruneRemove stopped containers, unused networks, dangling images
docker system prune -aRemove all unused images + containers
docker image prune -aRemove unused images
docker container pruneRemove stopped containers
docker volume pruneRemove unused volumes

⚠️ Be careful with -a → deletes unused images


8. Registry & Login

CommandDescription
docker loginLogin to registry
docker logoutLogout
docker push <image>Push to registry
docker pull <image>Pull from registry

9. Debugging & Stats

CommandDescription
docker top <container>View running processes
docker statsLive container resource usage
docker eventsReal-time Docker events
docker diff <container>Show filesystem changes

10. Multi-Platform Build (Useful for ARM/M1/M2)

docker buildx create --use
docker buildx build --platform linux/amd64,linux/arm64 -t myapp:latest --push .