Skip to main content
Skip table of contents

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 Solution Prerequisites are met for the desired deployment type. 
  3. Download the deployment script 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
    $ ./
  5. Execute the following commands inside current directory. 

    # chmod 755
    # ./
  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 ./ 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. 


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

    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


    Primary/Publisher UCCX IP


    Secondary/Subscriber UCCX IP


    UCCX admin username


    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 ./ 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

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.