·7 min read
Docker Commands Cheat Sheet
Docker packages applications into containers that run consistently across environments. This cheat sheet covers the commands you use most often.
Container Lifecycle
docker run -d -p 8080:80 --name myapp nginx docker ps # Running containers docker ps -a # All containers docker stop myapp docker start myapp docker restart myapp docker rm myapp # Remove container docker rm -f myapp # Force remove running
Images
docker images # List images docker pull nginx:latest docker build -t myapp:1.0 . docker rmi myapp:1.0 # Remove image docker image prune # Remove unused images
Logs and Debugging
docker logs myapp docker logs -f myapp # Follow logs docker exec -it myapp bash # Shell into container docker exec myapp cat /etc/os-release docker inspect myapp docker stats # Resource usage
Volumes
docker volume create mydata docker volume ls docker run -v mydata:/data nginx docker volume rm mydata docker volume prune
Networking
docker network ls docker network create mynet docker run --network mynet nginx docker network inspect mynet
Docker Compose
docker compose up -d # Start services docker compose down # Stop and remove docker compose ps # List services docker compose logs -f # Follow logs docker compose build # Build images docker compose restart # Restart services
Cleanup
docker system prune # Remove unused data docker system prune -a # Remove all unused docker container prune # Stop containers docker image prune -a # Unused images
Common Patterns
# Run temporary container docker run --rm ubuntu echo "hello" # Port mapping docker run -p 3000:3000 myapp # Environment variables docker run -e NODE_ENV=production myapp # Copy files docker cp myapp:/app/logs ./logs
Tip
Use YAML to JSON to convert Docker Compose YAML configs to JSON for inspection or use in other tools.