Docker Cheat Sheet
Docker commands, Dockerfiles, and container management.
2 PagesIntermediateMay 12, 2026
Basic Commands
Essential Docker CLI commands.
bash
docker pull nginx # Pull imagedocker run -d -p 80:80 nginx # Run containerdocker ps # List runningdocker ps -a # List alldocker stop <id> # Stop containerdocker rm <id> # Remove container
Dockerfile
Build your own Docker image.
dockerfile
FROM node:18-alpineWORKDIR /appCOPY package*.json ./RUN npm ci --only=productionCOPY . .EXPOSE 3000CMD ["node", "server.js"]
Docker Compose
Multi-container orchestration.
yaml
version: "3.8"services: web: build: . ports: - "3000:3000" db: image: postgres:15 environment: POSTGRES_PASSWORD: secret
Volumes & Networks
Persist data and connect containers.
bash
docker volume create appdatadocker run -v appdata:/var/lib/data myimg # named volumedocker run -v $(pwd):/app myimg # bind mountdocker network create backenddocker run --network backend --name db postgresdocker run --network backend api # reach 'db' by namedocker volume prune # remove unused
Multi-Stage Builds
Produce small production images.
dockerfile
FROM node:20 AS buildWORKDIR /appCOPY package*.json ./RUN npm ciCOPY . .RUN npm run buildFROM nginx:alpineCOPY --from=build /app/dist /usr/share/nginx/htmlEXPOSE 80
Inspecting & Debugging
Look inside running containers and images.
bash
docker ps -a # all containersdocker logs -f <container> # follow logsdocker exec -it <container> sh # shell insidedocker inspect <container> # full JSON configdocker stats # live resource usagedocker system prune -a # reclaim disk spacedocker cp <container>:/f ./f # copy file out
Image Build Best Practices
Keep images small, secure, and cache-friendly.
- .dockerignore- exclude node_modules, .git, secrets from the build context
- Layer ordering- copy dependency manifests before source to reuse cached installs
- Pin base tags- use specific versions (node:20-alpine) not :latest for reproducibility
- Non-root USER- run as an unprivileged user to reduce attack surface
- Combine RUN- chain apt-get update && install && clean in one layer to shrink size
Pro Tip
Use multi-stage builds to keep your production images small and secure.
Was this cheat sheet helpful?
Explore Topics
#Docker#DockerCheatSheet#DevOps#Intermediate#BasicCommands#Dockerfile#DockerCompose#VolumesNetworks#CheatSheet#SkillVeris