Rocket.Chat is an open source communication platform that provides a team-chat interface with features and plugins to facilitate collaboration.
Rocket.chat can be setup as a self-hosted and self managed solution.
- Up to 1k Users (recommended)
- Unlimited Message History
- 10.000 Monthly Push Notifications
- Omnichannel Basic (Livechat included)
- LDAP Basic Sync
- End-to-End Encryption
- Customizable User Permission
- Guest Users
Self-hosted Server Setup 
- Hardware: Raspberry Pi 4 (8GB)
- OS: Raspberry Pi OS Lite (64-bit)
- Storage: 500GB SSD (Samsung T7 - External SSD - USB 3.0)
- Power supply: USB-C (5V 3A or more)
- Internet connection
Rocket.Chat Server Installation
- Perform system updates:
sudo apt-get update && sudo apt-get dist-upgrade -y
- Install the snap daemon:
sudo apt-get install snapd
- Install rocket.chat server:
sudo snap install rocketchat-server
- Verify that the rocket.chat server is started:
- The chat server should be running on port 3000.
- Point a browser on the same network as the Pi to
- You should be able to access the Rocket.Chat server.
- If the server is not running, run the following command and try again:
sudo snap start rocketchat-server
- Once you are able to access the server you should be promp[ted to create the first user, which will become the server’s adminsitrator.
Publish your Rocket.Chat server to the internet using ngrok [2:1]
- Create a free-tier account from https://ngrok.com/
- Your Rocket.Chat server should be up and running
- Install terminal multiplexer (tmux):
sudo apt-get install tmux
- Download/unzip ngrok:
curl https://bin.equinox.io/c/4VmDzA7iaHb/ngrok-stable-linux-arm64.zip -o ngrok.zip
- If the above link doesn’t work, check the official ngrok website to get an updated link: https://ngrok.com/download
- Configure ngrok:
./ngrok authtoken <login to obtain auth token>
- Run new tmux session window:
tmux new -s session
- Use ngrok to publish access to your running chat server:
./ngrok http 3000
- The output from this command should display a custom URL for accessing your server.
- Copy this URL. This is how you will access the chat server.
- Detach from the tmux session window and logout:
- (Ctrl + b) + d will return you to the main terminal.
Rocket.Chat should now be running and accessible via the public URL provided by the ngrok service. You can also use this URL to connect using the Rocket.chat mobile app.