Document toolboxDocument toolbox

.Deployment Guide v12.3.1

Applying patch on 12.3.1

  1. Replace the docker-compose file with this file
  2. Download ecm-frontend.tar , ecm-services.tar and run following commands
$ docker load < ecm-frontend.tar
$ docker load < ecm-services.tar
$ docker-compose up -d

Fresh Installation

Download below files and place them in /root on all machines where the application’s being deployed.


System Access Requirements

  • Administrative privileges (root) are required to follow the deployment steps.

Installation 

Loading all images

Load the images in docker engine on all the machines running following commands (execute each command separately, the command starts after $ sign) : 

$ docker load < ecm.tar

$ docker load < umm.tar   

$ docker load < ecm-services.tar

$ docker load < ecm-frontend.tar

Configuration

Application Configurations 

  • Create new databases in the MSSQL server with any names corresponding to umm and ecm and edit the corresponding settings in “docker-compose.yml” file for configuration. Details have been written in the comments.
  • Update the DB name required URLs and cisco related (IP, Username, and Password) configuration in the “ecm_variables.env” file. DB configurations for umm can be updated directly in “docker-compose.yml”.

HTTPS Configuration

Replace the content of “https” folder h any https certificate and key. The names of the certificate and the key should be “server.crt” and “server.key” respectively.

Execution

  •  Start the compose service on all machines (in case of HA, there’d be multiple machines) using the following command:


$ docker-compose up -d

For fetching UCCX campaigns on the interface

Once the application settings are defined from the web interface. Remove the container ecm backend using command  $ docker container rm -f <container_id>, once the container is removed, now again run the command $ docker-compose up -d go to the campaigns menu and verify that cisco campaigns are appearing in the dropdown menu.

Log Rotation 

Add the following lines in /etc/docker/daemon.json file and restart the docker daemon using systemctl. Restart docker on all machines.

{ 
	"log-driver": "json-file", 

	"log-opts": 
		{
			"max-size": "20m", # Max size of the log files. 

			"max-file": "3" # The maximum number of log files.
		} 
}

Troubleshooting

Logs for each container are available in files as well as within docker daemon. To see the logs for any container, execute docker ps and get the id of the container. Use that id to see the logs using docker logs <container_id>. At any given time, the active machine would be the one with highest keepalived priority, so the logs would be stored there.