Hacker News new | ask | show | jobs
by hn_throw2025 353 days ago
Great points in this thread, but I would say another advantage of Docker is that of documentation.

The Dockerfile is a description of a reproducible build, and a docker-compose.yml file documents how running services interact, which ports are exposed, any volumes that are shared, etc.

It’s all too easy for config knowledge to be siloed in people. I got the impression that the Author prefers tinkering with pet servers.

1 comments

> The Dockerfile is a description of a reproducible build

It's not inherently reproducible but it can potentially be made so.

How is it not reproducible?
By default there is no assurance that any external resource you use is going to be the same every time. Whether that's another image, a package you install, etc. This is something you have to ensure yourself if you want it to be actually reproducible. Specifying a specific version or hash of an external resource can help get you there.
Thanks - that makes sense now. I was thinking of "reproducible" as in it does the same thing each time, but as you say, that can lead to different outcomes - usually updated or patched versions of base images etc.