kaikeru
entries
resume
bookshelf
github
↗
goodreads
↗
linkedin
↗
ci
March 2019
Mar 13
· 6 min
Docker as a CI Build System
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. This could be security patch, library versions, or even OS versions. For us, a runner might be Ubuntu or OSX. This means out of date local packages cause build failures. Don’t get me wrong, that’s a worst case scenario. Worst case always happens in DevOps.
tags ~
devops
docker
continuous integration