Document toolboxDocument toolbox

(14.1) Installation with Docker-compose


Installation Steps

Internet should be available on the machine where the application is being installed and connections on port 9242 should be allowed in the network firewall to carry out the installation steps. 


All the commands start with a # indicating that root user privileges are required to execute these commands. Trailing # is not a part of the command.


Allow ports in the firewall

To start the firewall (if it isn't started already), execute the following commands:  

# systemctl enable firewalld
# systemctl start firewalld

To allow the ports on firewall, you can execute the following commands. (Run on both machines in case of HA). 

# firewall-cmd --add-port=443/tcp --permanent
# firewall-cmd --add-port=8088/tcp --permanent
# firewall-cmd --add-port=5060/tcp --permanent 
# firewall-cmd --add-port=16386-32768/udp --permanent 
# firewall-cmd --reload


Installation Steps

  1. Follow this guide to install and configure Freeswitch
  2. Please make sure that (14.1) Solution Prerequisites are met for the desired deployment type. 
  3. Download the deployment script deployment.sh and place it in the user home or any desired directory. This script will:
    1. delete the recording-solution directory if it exists.
    2. clone the required files for deployment
  4. To execute the script, give it the execute permissions and execute it. This command will clone the skeleton project for recording solution. the recording-solution directory contains all the required files for deployment.

    $ chmod 755 deployment.sh
    $ ./deployment.sh
  5. Execute the following commands inside current directory. 

    # chmod 755 install.sh
    # ./install.sh
  6. Check if keycloak container is healthy, if it is on restarting, kill  (docker rm keycloak) and remove (docker rm keycloak) the keycloak container then run ./install.sh. Wait for keycloak container to become healthy.
  7. Set up keycloak
  8. Once keyclaok is set up, update below environment variables in recording-solution/docker/config.env file. 

    NameDescription
    VRS_URL

    Update the IP in this variable's value. It should be VRS machine IP.

    https://192.168.1.106

    KEYCLOAK_REALM_NAMERealm name created in step 4 of keycloak setup
    KEYCLOAK_CLIENT_IDKeycloak client id from step 6 of keycloak setup
    KEYCLOAK_CLIENT_SECRETKeycloak client secret from step 8 of keycloak setup
    KEYCLOAK_URLkeep default
    KEYCLOAK_PERMISSION_GROUPKeycloak Group from step 12 of keycloak setup

    CCX_PRIMARY_IP

    Primary/Publisher UCCX IP

    CCX_SECONDARY_IP

    Secondary/Subscriber UCCX IP

    CCX_ADMIN_USERNAME

    UCCX admin username

    CCX_ADMIN_PASSWORD

    UCCX admin password
  9. To update the self signed certificates for VRS, get the public authority or domain signed certificate .crt and .key files, name them server.crt and server.key and replace the files in /recording-solution/config/certificates with these two new files. Names should be exactly same.
  10.  Run ./install.sh again
  11. Run the following command to ensure that all the components are up and running. 

    # docker ps
  12. Go to https://VRS-IP/#/login to access the application.
  13. Configure SIP trunk to enable CUCM to send SIP events to VRS for call recordings