Deploying Rocket.Chat on Aliyun
You can install Rocket.Chat to Ubuntu VPS on Aliyun.
The recommended VPS configuration is:
  • 2 GB RAM
  • 10 GB disk
  • 2 or 4 cores
However, lower performance configuration has been tested on a VPS with:
  • 1 GB RAM
  • 10 GB disk
  • 1 core
Follow these steps to install Rocket.Chat.

Update Ubuntu repo lists and Install curl

After you ssh to the VPS:
aliyun shell
Run the command:
apt-get update
followed by:
apt-get install curl

Install docker

Run this command:
curl -sSL | sh
Docker should be installed, verify it:
docker ps
aliyun docker verify

Install docker-compose

Install docker-compose, follow the latest release instructions
For release 1.5.0, you can use:
curl -L`uname -s`-`uname -m` > /usr/local/bin/docker-compose
(if or when this is blocked, you'll have to obtain Linux-x86_64 docker-compose binary via other means)
Next, allow execution of docker-compose:
chmod +x /usr/local/bin/docker-compose

Create directories for Rocket.Chat

mkdir /home/rocketchat
cd /home/rocketchat
Make two more directories for the mongodb database:
mkdir data
mkdir dump

Create customized docker-compose.yml

Create a docker-compose.yml file with the following content:
version: '2'
restart: unless-stopped
- ./uploads:/app/uploads
- PORT=3000
- MONGO_URL=mongodb://mongo:27017/rocketchat
- MONGO_OPLOG_URL=mongodb://mongo:27017/local
- Accounts_UseDNSDomainCheck=True
- mongo
- 8818:3000
image: mongo
restart: unless-stopped
- $PWD/data:/data/db
- $PWD/dump:/dump
command: mongod --smallfiles --oplogSize 128 --replSet rs0 --storageEngine=mmapv1
# this container's job is just run the command to initialize the replica set.
# it will run the command and remove himself (it will not stay running)
image: mongo
command: 'bash -c "for i in `seq 1 30`; do mongo mongo/rocketchat --eval \"rs.initiate({ _id: ''rs0'', members: [ { _id: 0, host: ''localhost:27017'' } ]})\" && s=$? && break || s=$?; echo \"Tried $i times. Waiting 5 secs...\"; sleep 5; done; (exit $s)"'
- mongo
Make sure you customize the file with your-ip-address in the MONGO_URL env variable.

Pull the required docker images

This will download the required docker images, and may take some time.
This is done only the first time, or when you want to update Rocket.Chat.
docker pull mongo
docker pull

Start the mongodb database

docker-compose up -d mongo
Mongo supports 24 x 7 operations and live backup. You should not need to restart it too frequently. See mongodb documentations for proper operation and management of a mongo server.
Wait a couple of minute for mongo to start properly.

Start the mongodb replica

docker-compose up -d mongo-init-replica
This container's job is just to run the command to initialize the replica set. It will run the command and remove itself (it will not stay running)

Start your Rocket.Chat server

Now start the Rocket.Chat server:
docker-compose up -d rocketchat
Rocket.Chat should be ready in a minute or two.

Access your Rocket.Chat on Aliyun

Your Rocket.Chat server can now be accessed over the Internet via:
Last modified 4mo ago