Run apps with Docker
Build an image, connect services, and keep your data between container replacements.
Beginner
- Docker without the buzzwords read Understand what Docker actually is and does (images, containers, Dockerfiles, ports, volumes, and Compose) without the enterprise hype. 5 min
- Images, containers, and Dockerfiles read The recipe, the snapshot, and the running instance: what an image, a container, and a Dockerfile actually are, and how docker build and docker run connect them. 12 min
- Write your first Dockerfile read A real working Dockerfile for a Node and Express app, every instruction explained, plus .dockerignore and the node_modules trap. 12 min
- Docker ports, volumes, and environment variables read The three Docker settings that break most beginner setups, and exactly what 3000:3000 really means. 13 min
- Run multiple services with Docker Compose read One file to start a Node API, PostgreSQL, and Redis together, with the networks, volumes, and env vars wired up. 10 min
- Keep your data with Docker volumes read Why containers are disposable but your data should not be, named volumes versus bind mounts, and how to reset a database on purpose instead of by accident. 12 min
- Connect containers with Docker networking read Why localhost means something different inside a container, how Compose service names work, and the API connection bugs that follow. 11 min
- Containerize a full-stack app read How Docker fits a real app with a frontend, a Node backend, Postgres, and Redis, and why the frontend is often Dockerized for dev but shipped as static files. 12 min
- Prepare a Docker image for production read Multi-stage builds, smaller images, non-root users, health checks, restart policies, and secrets, and why npm run dev is not a production command. 15 min
- Debug a Docker container read A practical survival guide for Docker problems: ps, logs, exec, inspect, rebuilding without cache, and reasoning through it built but does not work. 13 min