Skip to main content

Docker

It is suggested to be familiar with the various kinds of roles for the on-premise deployment.

1. Hardware required for Docker Swarm

Below is the list of hardware required that you will need to provision.

Minimum CPUMinimum RAMMinimum StorageRequires Public IPVMOpen Public Ports
master8 core32GB250GBYesTCP: 80,443
storage18 core32GB250GBNo
storage28 core32GB250GBNo
calling8 core32GB50GBYesTCP: 80,443, 10000-20000
UDP: 10000-20000
websocket8 core32GB50GBYesTCP: 80,443,7070,5222,5223
node14 core8GB50GBNo
node24 core8GB50GBNo
extensions4 core8GB50GBYesTCP: 80, 443

2. Once the hardware and public IP's are ready

Please inform us of the IP's so that we can complete the required DNS record changes and configurations.

Ensure that the machines can connect to one another.

3. Install docker, docker compose are installed on all machines

Ensure that a recent docker (version 3.7) with docker-compose is installed on all machines.

4. Download the On-Prem shared by CometChat

Which will be shared with you.

5. Begin bootstrapping master

info

This will be shared with you, and restricts the deployment by number. of attempts, the IP's , your customer metadata, billing and renewal with CometChat Pro.

cd cometchatpro-onprem-dockerswarm-1.0.0
._master_bootstrap.sh

Expected Logs

Step 1: Please paste the CometChat Pro On-Premise Token shared with you                                                           
Password:
Login Succeeded
Step 2: Starting Docker Swarm for CometChat Pro On-Premise
Swarm initialized: current node (....) is now a manager.

To add a worker to this swarm, run the following command:

docker swarm join --token ...

To add a manager to this swarm, run 'docker swarm join-token manager' and follow the instructions.

Step 3: Please run the above from node1 and node2

You are now ready to bootstrap the other machines. Once they are all bootstrapped, we will come back to master to complete the bootstrap.

6. Bootstrapping other machines

Docker, docker-compose and the CometChat Folder must be available.

# see step2 of bootstrap master
docker swarm join...

cd cometchatpro-onprem-dockerswarm-1.0.0

#on calling
._calling_bootstrap.sh

#on websocket
._calling_bootstrap.sh

#on node1, node2
._node_bootstrap.sh

#on extensions
._extensions_bootstrap.sh