Automate Marketing Initiatives with Salesforce Marketing Cloud Learn More

How to Build Your Own Communication Platform with



Published On:


Rocket.Chat is an open-source, leading, and customizable communication platform. Its developed for communities and organizations that put data privacy first.


Further, it is built for organizations that need more control over their communications. The platform enables collaboration between colleagues, partners, customers, communities. And even platforms without compromises on data ownership, customizations, or integrations.


R is a MERN-based application enabling real-time communication between friends, other companies, or your customers. This is done regardless of how they communicate with you. The result is a growth in productivity and customer satisfaction rates.


Rocket.Chat enables you to browse communication, reply to messages and collaborate with the team. Meanwhile, it integrates with multiple communication channels like website live-chat, email, Facebook page, Twitter, WhatsApp, Instagram, etc. It shows Discussions from various channels, thereby constructing a single view of the customer. As a result, this helps diminish the time needed to switch between the tools—the mobile app for Rocket. Using our self-managed offerings, you can deploy Rocket.Chat on your server. Or you can use SaaS Rocket.Chat. They offer support for both communities as well as commercial plans.

Rocket.Chat enables Conversation through the bunch. And over 10 million people are using it. For team communication, customer service, secure file sharing across the team, and much more. Rocket.Chat is, in many ways, the world’s better compatible open-source leading communications platform.

The Main Features of Rocket.Chat

Due to its scalable and versatility, Organizations can adapt Rocket.Chat in many ways. From internal communication to virtual events. Chat’s openness allows companies to create new products on top of its code.

Talk to People Outside of Rocket.Chat

Conversations with other teams shouldn’t be a hassle because they use different communication platforms. As Rocket.Chat allows you to communicate with partners, vendors, or organizations. Regardless of their collaboration platform. You can speak to people across Slack, MS Teams, Skype for Business, and other communications platforms.

Five Reasons Organizations Choose Rocket.Chat

Your data is essential, whether it’s secret or work-related. It is a common misunderstanding that no criminal is interested in what you do online to bother stealing it. Still, ransomware is a largely automated process that doesn’t require anyone to care about you. All it needs is data important to you to be exposed, stolen, and then ransomed back to you. To combat this, you need acceptable privacy in your online conversion.


That’s one reason to pick Rocket.Chat, but not the only one. Here are five good reasons to pick Rocket.Chat over a non-open platform:


It has been open source from day one. With over 1000 supporters worldwide, it has standards for security, data privacy, and transparency. Thus only open source Platforms can propose.


It is full of out-of-the-box features, and you can make it even more helpful, efficient, and fun with integrations and add-on apps. This is just one of the benefits of being open source. Further, based on webhooks, Rocket.Chat integrations connect the platform you already use with your workspace, providing a simplified workflow and Growing productivity.

In its Marketplace, you’ll find apps to integrate with additional services, such as WhatsApp, Twitter, Jira, Facebook Messenger, etc. They’re simply one click out from being added to your workplace.

Streamlined Communication for Teams and Customers

You don’t have to bring a scientific survey to know that employees want to streamline communication through a single application. Rocket.Chat accommodates workplace communication. It also permits you to divide communication into channels, threads, and discussions to work with your remote associates.

It also has extensive team collaboration features. This assure productivity, such as unlimited access to chat history, broadcast channels, and integrations.


Not only does Rocket.Chat permits you to chat with colleagues, but it also lets you get in touch with customers. And lets you centralize your messages in an inbox. Due to its extensive set of integrations, you can provide customer support fully from Rocket.Chat. Regardless of the medium your customers reach out to you from.


It integrates with standard social media channels (including Facebook Messenger, email, WhatsApp, Telegram, and SMS) and integrates with CRMs, chatbots, and machine learning apps.

SaaS or Self-Managed Hosting

Rocket.Chat can be deployed in numerous ways, depending on business requirements. You can pick between deploying it on Rocket.Chat’s cloud, cloud servers under your control, or your premises.


Rocket.Chat suggests one-click deployments for better than thirty deployment processes across many on-premise and cloud solutions. For businesses worried about data security, its on-premise hosting option gives you complete control of your data, meaning nothing leaves your infrastructure. It can be hosted fully behind your firewall or even on an air-gapped network.

Complete Data Privacy, Security

Rocket.Chat is ISO27001-certified. Its SaaS version is hosted in protected and audited data hubs, ensuring the best performance and meeting strict data localization needs. For the on-premise version, you will be able to leverage the self-managed installation in your data hub with layered protection options (e.g., SSL, VPN, and DMZ).


The self-managed choice is common for many companies with high criteria for data protection, like the American cybersecurity firm OnShore and the Government of British Columbia.

High Availability Infrastructure and Microservices Architecture​​​​​​​​

A standard pain point for fast-growing enterprises and startups is finding software solutions that grow with them. Rocket.Chat’s microservices architecture permits enterprises to scale quickly and save on infrastructure expenses.


A microservices architecture describes the application is developed as a suite of remote services. When it requires to be scaled, only parts of the system will need to be modified instead of the whole system—saving enterprises time and cash.


If you’re pitching Rocket.Chat to your boss; significantly, you can begin using chat for free or opt for one of its paid SaaS and self-hosted offers starting at $2 per user per month. Paid plans offer high availability infrastructure, microservices, managerial services (including LDAP and Active Directory, social media log in, an Atlassian bundle, and many more), and push notifications.

How to Setup Rocket.Chat

Below is the installation guide that was tested in the following environment:


  •  Rocket.Chat 3.0.0 
  •  OS: Ubuntu 18.04 LTS, Ubuntu 19.04 and Ubuntu 20.04(Latest)
  •  Mongodb 4.0.9 
  •  NodeJS 12.14.0

Step1: – Install Necessary Dependency Packages


Update package list and configure apt to install the official MongoDB packages with the following repository file: <>

sudo apt-get -y update 


sudo apt-key adv --keyserver hkp:// --recv 9DA31620334BD75D9DCB49F368818C72E52529D4 


echo "deb [ arch=amd64 ] bionic/mongodb-org/4.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.0.list 

Configure Node.js to be installed via package manager: <>

sudo apt-get -y update && sudo apt-get install -y curl && curl -sL | sudo bash - 

Install build tools, MongoDB, nodejs and graphicsmagick: <>

sudo apt-get install -y build-essential mongodb-org nodejs graphicsmagick

Run the following command to install  <>

npm sudo apt install nodejs  
node -v or node –version
sudo apt install npm
npm -v or npm –version
sudo npm install -g inherits n && sudo n 12.14.0

Using npm install inherits and n, and the node version required by Rocket.Chat: <>

sudo npm install -g inherits n && sudo n 12.14.0 

A place for big ideas.

Reimagine organizational performance while delivering a delightful experience through optimized operations.

Step 2:- Install Rocket.Chat


Download the latest Rocket.Chat version:<>

curl -L -o /tmp/ 


tar -xzf /tmp/ -C /tmp 

Install (this guide uses /opt but feel free to choose a different directory): <>

cd /tmp/bundle/programs/server && npm install 
sudo mv /tmp/bundle /opt/Rocket.Chat

Step 3: – Configure the Rocket.Chat service


Add the rocketchat user, and set the right permissions on the Rocket.Chat folder and create the Rocket.Chat service file: <>

sudo useradd -M rocketchat && sudo usermod -L rocketchat


sudo chown -R rocketchat:rocketchat /opt/Rocket.Chat

cat << EOF |sudo tee -a /lib/systemd/system/rocketchat.service


Description=The Rocket.Chat server
ExecStart=/usr/local/bin/node /opt/Rocket.Chat/main.js
Environment=MONGO_URL=mongodb://localhost:27017/rocketchat?repl icaSet=rs01
Environment=MONGO_URL=mongodb://localhost:27017/rocketchat?repl icaSet=rs01

Open the Rocket.Chat service file just created (/lib/systemd/system/rocketchat.service) using sudo and your favourite text editor, and change the ROOT_URL environmental variable to reflect the URL you want to use for accessing the server (optionally change MONGO_URL, MONGO_OPLOG_URL and PORT): <>





This image has an empty alt attribute; its file name is image-10.png

Setup storage engine and replication for MongoDB (mandatory for versions > 1), and enable and start MongoDB and Rocket.Chat: <>

sudo sed -i "s/^# engine:/ engine: mmapv1/" /etc/mongod.conf
sudo sed -i "s/^#replication:/replication:\n replSetName: rs01/"/etc/mongod.conf
sudo systemctl enable mongod && sudo systemctl start mongod
mongo --eval "printjson(rs.initiate())"
sudo systemctl enable rocketchat && sudo systemctl start rocketchat

Step 4: -Setting Up a Reverse Proxy with Nginx with SSL

To start, install Nginx.<>

sudo apt-get install -y nginx

Move your certificate’s private key file to the nginx folder /etc/nginx/certificate.key. <>

sudo cp /path/to/your/key /etc/nginx/certificate.key

For example,

if you created a now Let’s Encrypt certificate, you would use <>

sudo cp /etc/letsencrypt/live/your_domain_name/privkey.pem /etc/nginx/certificate.key.

Modify the permissions of keys so unauthorized robbers can’t gain access. <>

sudo chmod 400 /etc/nginx/certificate.key

Copy the certificate to /etc/nginx/certificate.crt. <>


sudo cp /path/to/your/cert /etc/nginx/certificate.crt

If you created a Let’s Encrypt certificate. 

the command is like  <>


sudo cp /etc/letsencrypt/live/your_domain_name/cert.pem /etc/nginx/certificate.crt
We are going to create an entirely new configuration for Rocket.Chat, so you can remove the default/existing to make it easier. <>
sudo rm /etc/nginx/sites-enabled/default

If you need that file back in the future, it is still available at /etc/nginx/sites-available/default

now, Create a new /etc/nginx/sites-enabled/default with nano or your favourite text editor <>

sudo nano /etc/nginx/sites-enabled/default

First, we’ll add an upstream block: 


This image has an empty alt attribute; its file name is image-11.png

Now let’s create a server block. The first part tells Nginx which port to listen for connections on, in this case :443. It also allows it to know what our hostname is 

Don’t forget to replace with your domain name. 


This image has an empty alt attribute; its file name is image-12.png

Under that part, we tell Nginx where they can find the  Rocket.Chat’s access logs, and we point it to the SSL certificate and key we placed in /etc/nginx/certificate.key and /etc/nginx/certificate.crt, respectively. 


This image has an empty alt attribute; its file name is image-13.png
And now, let's finish the configuration off with a location block:


location / {
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forward-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forward-Proto http;
proxy_set_header X-Nginx-Proxy true;
proxy_redirect off;
  • Here is the whole file for reference: 
This image has an empty alt attribute; its file name is content.png

Save and exit the file. Now, restart Nginx to finish the job. <>

sudo service nginx restart

Check if Nginx is running. <>

sudo service nginx status

If you see the following text, It means Nginx is up and running: 

This image has an empty alt attribute; its file name is content-1.png


If you see an error message, then check the log file at 


/var/log/nginx/rocketchat.access.log and /var/log/nginx/access.log or the error logs at /var/log/nginx/error.log You can also run nginx -t to verify your Nginx configuration file, which is where most errors show up.

Rocket.Chat Configuration


Configure Administration account 


  • Set the Auto to opt-in new users for Two Factor via Email to No.
This image has an empty alt attribute; its file name is 59116d65-9954-42fa-ba2d-5abcbc879799.png
  • And set the Registreer de server to Blijf stand-alone, dat moet je doen 
This image has an empty alt attribute; its file name is 47cfd13c-f8d4-49fa-a3e7-63d75013ecb2.png

How can I change Rocket.Chat logo and favicon icon for my own? 


To change Rocket.Chat logo for your own (logo of your company), please, navigate to Administration -> Assets. There you will be able to modify the logo, login background, and icon: 



  • To change the logo (the one that is located under the chats list at the bottom left side), click on “Select file” opposite the first field (logo (SVG, png, jpg)) and select the corresponding file from your library.
  •  After this, click on “Apply and refresh all clients” to finish the process.
This image has an empty alt attribute; its file name is content-2.png


This image has an empty alt attribute; its file name is content-3.png
  • ​​​​​​​​​​​​​​To change the login background, click on “Select file” opposite the second field (login background (SVG, png, jpg)) and select the corresponding file from your library. After this, click on “Apply and refresh all clients” to finish the process. 


This image has an empty alt attribute; its file name is content-4.png
This image has an empty alt attribute; its file name is content-5.png

To change the icon, click on “Select file” opposite the appropriate filed out of the four given (depending on the file type) and select the corresponding file from your library. Further, click on “Apply and refresh all clients” to finish the process. 

Disable Discussion


Go to Administration, Then search Discussion and click Discussion And disable it. 


This image has an empty alt attribute; its file name is bb3c049a-737b-4003-ac03-43c200312bef.png

Configure some css for hiding channels and maintain the logo on the login page – 


Go to Administration Then search Layout and click Layout and write custom CSS


This image has an empty alt attribute; its file name is 1af24312-841e-410b-b9ea-a31874065c82.png


register , .login-terms ,.sidebar__footer , .rcx-box button:first-child , .create-channel__switches .rc-switch:first-child{
display: none !important;
.rc-old.full-page .logo>img{
width: 120px;

Configure jitsi


Go to Video Conference from the Administration

  • Enable it
  • Add Domain
  • Add URL Room Prefix
This image has an empty alt attribute; its file name is finish.png



Congratulations! You now have your chat solution for you and your team: Rocket.Chat, running on an Ubuntu server. It is set to launch at boot using the forever service. Its fully loaded with SSL using an Nginx reverse proxy. Further, you may now want to add more associates, create more channels, or maybe check out the Integrations section of the Administration menu.


Top Stories

Microsoft Azure Cloud
5 Reasons to Use Microsoft Azure Cloud for Your Enterprise
Cloud computing is the stream of modern computer science technology in which we learn how to deliver different services through the Internet. These services include tools like servers, data storage, databases, networking, and software. Cloud computing is an optimized solution for people and enterprises looking for several benefits, such as
Cloud Computing Platform
What Makes Microsoft Azure a Better Cloud Computing Platform
Microsoft has leveraged its continuously expanding worldwide network of data centers to create Azure cloud, a platform for creating, deploying, and managing services and applications anywhere. Azure provides an ever-expanding array of tools and services designed to fulfill all your needs through one convenient, easy-to-manage Platform. Azure sums up the
Azure Cloud
Things You Should Know About Microsoft Azure Cloud Computing
Microsoft Azure is a cloud computing service provided by Microsoft. Azure has over 600 benefits, but overall, Azure is a web-based platform for building, testing, managing, and deploying applications and services. Azure offers three main functional areas. Virtual machines, cloud services, and application services. Microsoft Azure is a platform for
Microsoft Azure Cloud Computing
What Are the Options for Automation Using Microsoft Azure?
Automation is at the forefront of all enterprise IT solutions. If processes overlap, use technical resources to automate them. If your function takes a long time, find a way to automate it. If the task is of little value and no one needs to work on it, automate it. This
Apache Airflow
How to Create and Run DAGs in Apache Airflow
Apache Airflow is an open source distributed workflow management platform built for data orchestration. Maxime Beauchemin first started his Airflow project on his Airbnb. After the project's success, the Apache Software Foundation quickly adopted his Airflow project. Initially, he was hired as an incubator project in 2016 and later as
Apache Airflow Automation
How Easy is it to Get Started with Apache Airflow?
Apache Airflow is a workflow engine that efficiently plans and executes complex data pipelines. It ensures that each task in your data pipeline runs in the correct order and that each job gets the resources it needs. It provides a friendly UI to monitor and fix any issues. Airflow is


          Keep an eye on your inbox for the PDF, it's on its way!

          If you don't see it in your inbox, don't forget to give your junk folder a quick peek. Just in case. 

              You have successfully subscribed to the newsletter

              There was an error while trying to send your request. Please try again.

              Zehntech will use the information you provide on this form to be in touch with you and to provide updates and marketing.