AskDB
·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.