Cognos Analytics

 View Only

Build and run the Cognos Analytics Gateway as a Docker Container in an on-prem environment

By ANTONIO MARZIANO posted Tue June 02, 2020 07:02 AM

The purpose of this article is to experiment in creating a docker container to run the Cognos Analytics Gateway component in an existing on-premise CA environment. Simply starting up a new container takes seconds compared to much longer to do an installation and you can achieve high availability and fault tolerance by simply starting up a new container which takes a few seconds. So I was just having a bit of fun and built this little lab to demonstrate how its done with no official recommendations that this is supported or recommended but without doubt it works.


Environment: - Dispatcher/CM (Windows 2016) - Docker Host (CentOS 7)

In order to build an image, you need to do a little bit of prep work such as grabbing a clean cogstartup.xml file from a gateway only installation which you can do separately just to grab the xml file. Then edit the xml file and change the URIs to point to the Dispatcher (CAOIDC1 on windows 2016). Also, you need to ensure Docker is installed on the host server where the image will be deployed (PROXYSERVER1 on CentOS).

Steps are as follows:

1. On the CentOS server upload the following files to the /tmp/caweb directory:

2. In that same location create a properties file with the following content:


3. Save the file as

4. Create the gateway conf file ca.conf with the following content and update the host so it points to the Dispatcher IP address:

5. Edit the cogstartup.xml file and make sure you point the dispatcher URI's to the windows 2016 machine:

6. So now the list of files that should be in the same location are:

7. In the current working directory (/tmp/caweb) create a docker file:

vim Dockerfile

8. Paste the following instructions:

The docker file instructions above shows the steps to install apache, set environment variables, do a silent installation, copy the pre-built files over, delete the installation files and startup the webserver.

9. The list of files now are:

10. Now execute the following command to build a local image using docker:

docker image build --no-cache -t caweb:11.1.5 .

11. Once complete run the docker command 'docker images':

So now we have a base image to build containers from. As long as the image does NOT need to change then what ever happens, you can "spin" up a new container as and when required!

12. Next we will now create a new container and expose port 80 and 9300 and name the container 'caweb11.1.5':

docker container run -d -p 80:80 -p 9300:9300 --name=caweb11.1.5 caweb:11.1.5

13. List the container using 'docker container ps' :


14. It may be necessary to run the /bin64/ -config to generate the crypto and save the configuration. If that is required then run the following command:

docker container exec -it <containerID> -config

15. Launch a new browser session and you should be able to access CA via the gateway running in a docker container.

NB: Configure the Dispatcher/CM server CAOIDC1 with the gateway URI:


Additional Information:


Additional Blogs:

Cognos Analytics