Stack · Tooling
Docker — reproducible builds & environments
EcosystemDocker
Docker is how I keep an environment the same in three places that otherwise drift: my machine, CI, and the server it eventually runs on.
Why I use it
"Works on my machine" is nearly always a version difference nobody wrote down. A Dockerfile writes it down. The practical wins are multi-stage builds — build dependencies stay out of the final image, which drops it from hundreds of megabytes to tens — and Compose, which means a new contributor gets Postgres running with one command instead of a page of setup instructions.
What I've built with it
- Multi-stage Dockerfiles for Node services, so the shipped image carries the runtime and nothing that built it
- Compose files spinning up Postgres, Redis and the app together for local development
- The same image built in CI and deployed, so what passed the tests is what runs
- Pinned base images and non-root users, because latest is not a version and root is not a requirement
Alongside
Rest of the stack
Got a project that needs Docker?
Get in touch →