By Arslan Ud Din Shafiq, Alibaba Cloud Tech Share Author. Tech Share is Alibaba Cloud's incentive program to encourage the sharing of technical knowledge and best practices within the cloud community.
Rocket Chat is an open source software that allows you to collaborate and communicate with your team via video and audio calls. It helps you to increase productivity by sharing and discussing projects and ideas and by sharing files with your team.
In this tutorial, I will be installing and setting up Rocket Chat on Alibaba Cloud Elastic Compute Service (ECS) with Ubuntu 16.04 installed.
Before proceeding with installation of any kind of package, use the following command to update your Ubuntu system. To execute this command, remember to login from non-root user with sudo privileges.
# sudo apt update && sudo apt upgrade
To install Rocket Chat, you will need to use snap, a containerized software package that can be installed on any Linux operating system. Snapd is a service which runs and manages the snap. To install snapd, you will need to execute the following command.
# sudo apt-get install snapd
Snaps are an easy, secure and best way to install and manage apps, hence, you will use Snap to install Rocket Chat. To install Rocket Chat, execute the following command.
# sudo snap install rocketchat-server
Rocket Chat service will start automatically after installation. To check the status of Rocket Chat, you can execute the following command.
# sudo service snap.rocketchat-server.rocketchat-server status
You can access Rocket Chat server via domain name or Alibaba Cloud ECS IP address by concatenating port 3000 in the end of URL. You will see the following screen but before making any settings at this stage, I will recommend to perform all the steps in the following sections including reverse proxy and then access Rocket Chat without concatenating port and do settings for Rocket Chat.
If you have activated firewalls, you will have to define a rule in Alibaba Cloud security group for your cloud server to add exception for port 80/tcp and 443/tcp. You can enable these ports while creating ECS instance, but in case if you have forgotten to unblock these ports, you can follow the procedure in this guide: https://www.alibabacloud.com/help/doc-detail/25471.htm
As you will need to access Rocket Chat via http://localhost:3000, hence, you will need to setup a reverse proxy. To setup reverse proxy, you will need to install Nginx server. To install Nginx server, execute the command below.
# sudo apt-get install -y nginx
Start and enable nginx server so that on system reboot, it can start automatically. To do so, execute the commands below.
# sudo systemctl start nginx
# sudo systemctl enable nginx
To install Node.js, execute the command below.
# sudo apt-get install nodejs
In this step, you will setup reverse proxy to access Rocket Chat so that you can access it via domain name without using any port in the end of address. To do so, execute the following command to create a nginx configuration file using nano editor.
# sudo nano /etc/nginx/conf.d/rocket.conf
Add the following text in the opened file and save it.
server {
listen 80;
listen [::]:80;
server_name softpedia.xyz;
location / {
proxy_pass http://localhost:3000/;
}
}
Restart nginx server using the command below.
# sudo systemctl restart nginx
You can access your Rocket Chat via your Alibaba Cloud ECS IP address or domain name pointed to IP address without using port 3000. After accessing, you will be redirected to setup Rocket Chat. If you want to setup SSL certificate, I will recommend to go to next section and install SSL certificate and then setup Rocket Chat.
Software-properties-common package is required to get the supported files for installation of SSL. In order to install software-properties-common package, follow the steps below.
To install software-properties-common execute the command.
# sudo apt-get install software-properties-common -y
To install SSL certificate using Encrypt SSL, follow the steps below.
Update your system by executing command below.
# sudo apt-get update
Add certbot repository using PPA by executing command below.
# sudo add-apt-repository ppa:certbot/certbot
Update your system by executing command below.
# sudo apt-get update
Install python-certbot-nginx using the command below.
# sudo apt-get install python-certbot-nginx
Issue SSL certificate to your domain by executing the command below.
# sudo certbot --nginx -d softpedia.xyz
Restart nginx server using the command below.
# sudo systemctl restart nginx
Access Rocket Chat using your domain name or Alibaba Cloud ECS IP address and start making settings. On accessing URL, you will see the following screen. Fill the form for administrator account and hit Continue.
After clicking Continue, you will be asked to provide organization's information.
After clicking Continue, you will be asked to provide server information.
After clicking Continue, you will be asked to register server as shown below.
You will be redirected to the following page after hitting Continue.
Click "Go to your workspace", you will be redirected to dashboard of Rocket Chat.
You have successfully installed and configured Rocket Chat on your ECS instance.
2,599 posts | 764 followers
FollowAlex - June 21, 2019
Hiteshjethva - March 2, 2020
Alibaba Cloud Community - April 18, 2024
Alibaba Cloud Community - April 18, 2024
Alibaba Clouder - July 9, 2018
Alibaba Clouder - June 11, 2019
2,599 posts | 764 followers
FollowBuild superapps and corresponding ecosystems on a full-stack platform
Learn MoreWeb App Service allows you to deploy, scale, adjust, and monitor applications in an easy, efficient, secure, and flexible manner.
Learn MoreExplore Web Hosting solutions that can power your personal website or empower your online business.
Learn MoreAlibaba Cloud (in partnership with Whale Cloud) helps telcos build an all-in-one telecommunication and digital lifestyle platform based on DingTalk.
Learn MoreMore Posts by Alibaba Clouder