ServiceNow MID Server in Docker

ServiceNow requires a MID server when you want to interact with resources behind firewalls. I wanted to allow my end users to reset there Open VPN Google Auth code using self service. Due to this I needed to install a MID server to reach our servers. I put this Docker to make things easier.

Below is a link for a quick explanation of SN Mid server:

It is a simple Java application. I did not want to install it on bare metal. We use docker here at work. So a good reason to use docker.

I found the following git repo that had mid server in Docker. Only problem was that it was out of date and using Ubuntu for it is base image.

So I tweaked a few things changed base image to Centos.

The next issue is that the download file for the installation changes for each ServiceNow update.

So I created a dockerhub account and created a build linked to my repo. When I update the Wget url and push the code to master, a job in docker cloud is fired off via webhook. This auto builds the docker image.

This was very helpful but I still had one more issue.  My prod SN instance is usually a version or two behind dev. I would need to use a different docker image for Prod.

My solution was to create another git branch and create a separate docker cloud build. This way I could have prod and dev branch. Depending on which branch I update it will build a different docker image.

My github and docker image links are below. Feel free to use it, fork it whatever: