| 6 minutes
In my current position, we define continuous integration builds for all our projects in a Dockerfile. For us, Docker provides a set of guarantees that are perfect for CI. Docker builds are reproducible. Docker is available on every major OS. Docker produces universal artifacts. Builds are Reproducible Everywhere A standard Jenkins build runs directly on the system. It’s nothing against Jenkins, but if you are just building on a raw node, the underlying instance will have discrepancies.