Continuous Integration
The aim of Continuous Integration is to enable a consistent and repeatable environment to build, test, and generate deployable artifacts of your application with every code push. Before a pushing code, a developer should have a reasonable expectation that their build will pass; therefore creating a reliable CI environment that automates commands that developers can also run in their local machines is paramount.
Containerizing build environment
In order to ensure a consistent build environment across various OS platforms, developer machines, and Continuous Integration environments, you may containerize your build environment. Note that there are at least half-a-dozen common CI tools currently in use. Learning the ins and outs of each tool is almost an impossible task to achieve. Containerization of your build environment is an advanced concept that goes above and beyond of what is currently expected of CI tools. However, containerization is a great way to standardize...