Configuring CI/CD using Jenkins in Docker
I'll configure my build to poll a Git repository and use Git pushes as the trigger for a new build.
Jenkins will connect to Git through the repository URL for Bonobo, and all the actions to build, test, and deploy the solution will run as Docker containers. The Bonobo server and the Docker engine have different authentication models, but Jenkins supports many credential types, and I can configure the build job to securely access the source repository and Docker on the host.
Setting up Jenkins credentials
Bonobo provides basic username/password authentication, which I'm using in my setup. In a business environment, I would use HTTPS for Bonobo, either by packaging a Secure Sockets Layer (SSL) certificate in the image or using a proxy server in front of Bonobo. In the Users
section of the Bonobo interface, I've created a Jenkins CI user and given it read access to the docker-on-windows
Git repository, which I'll use for my sample CI/CD job:
I've added...