Why learn Docker?
-
"Works on my machine" stops being an excuse.
-
A standard packaging format every cloud and CI system understands.
-
Run any database or service locally in one command.
-
The first step toward Kubernetes and modern deployment.
What you can build with Docker
Local dev environments Reproducible CI builds Shipping apps to any cloud Running open-source services without installing them
Docker tutorials
8 articlesHand-written tutorials, ordered as a recommended learning path.
- 01 What is Docker? A clear, no-hype introduction to Docker — what containers actually are, how they differ from virtual machines, and the vocabulary you need before installing anything.
- 02 Install & First Container A step-by-step setup guide for Docker on Windows, macOS, and Linux. Install the engine, verify it works, and run your first container in under fifteen minutes.
- 03 Dockerfile Basics Learn how to write a Dockerfile from scratch. Understand each instruction, build a real image for a small Node application, and run it as a container.
- 04 Docker Compose Learn Docker Compose by building a small two-service app — a web API and a Postgres database — defined in a single compose.yaml file and started with one command.
- 05 Images, Layers & Volumes A practical deep dive into how Docker images are stored as layers, how the build cache works, and the real difference between bind mounts and named volumes.
- 06 Multi-Stage Builds Use Docker multi-stage builds to ship tiny production images — build with full toolchains, copy only the artifacts. Examples for Node and Go, with .dockerignore and size comparisons.
- 07 Env Vars & Secrets How to feed configuration into Docker containers without baking it into the image — ENV vs ARG, --env-file, Compose env, BuildKit secret mounts, and Docker Swarm secrets, with safe defaults.
- 08 Docker Networking A practical guide to Docker networking: the default bridge, user-defined bridges, host networking, container DNS, and how port publishing actually works.