Cách cài đặt RocketChat trên VPS Linux
RocketChat là một nền tảng giao tiếp mã nguồn mở có thể tùy chỉnh hoàn toàn được viết bằng Javascript. RocketChat cung cấp nhiều tính năng như giao tiếp theo thời gian thực, tính linh hoạt và các giải pháp có thể mở rộng, đồng thời có các tiêu chuẩn bảo vệ dữ liệu cao. Trong hướng dẫn này, chúng tôi sẽ hướng dẫn cách cài đặt RocketChat trên VPS Linux Ubuntu. Blog này sẽ sử dụng Nginx làm proxy ngược cho ứng dụng RocketChat của chúng tôi.
Các bước cài đặt RocketChat trên VPS Ubuntu
Điều kiện để cài đặt RocketChat trên hệ thống Linux
Được tạo vào năm 2015, RocketChat là một một nền tảng truyền thông có thể tùy chỉnh và mã nguồn mở được thiết kế cho các cộng đồng và tổ chức có tiêu chuẩn cao về bảo vệ dữ liệu. RocketChat cho phép liên lạc để trò chuyện nhóm, dịch vụ khách hàng, chia sẻ tệp an toàn, v.v. Về nhiều mặt đây là nền tảng truyền thông nguồn mở toàn diện nhất thế giới. Vì là mã nguồn mở nên có thể tự cài đặt và lưu trữ nếu muốn. Bạn có thể triển khai nó bằng tất cả các phương pháp triển khai tiêu chuẩn ngành, bao gồm Podman, Docker hoặc Kubernetes, tất cả đều được RocketChat hỗ trợ chính thức. Nó cũng có thể được cài đặt và sử dụng trên nhiều nhà cung cấp máy chủ và đám mây.

RocketChat là một ứng dụng giao tiếp mã nguồn mở
Cài đặt RocketChat với Nginx làm proxy ngược là một quá trình đơn giản, có thể mất tới 25 phút tùy thuộc vào mức độ quen thuộc của bạn với hệ thống Linux. Nhưng trước hết hãy xem những điều kiện cần thiết để thực hiện được điều này:
- Một VPS Việt Nam (hệ điều hành Linux Ubuntu).
- Đặc quyền người dùng: người dùng root hoặc không root có đặc quyền sudo.
- Một miền hợp lệ được trỏ đến địa chỉ IP của máy chủ.
Bước 1. Cập nhật hệ thống
Trước khi bắt đầu cài đặt RocketChat, bạn cần cập nhật các gói hệ thống lên phiên bản mới nhất hiện có.
sudo apt-get update -y && sudo apt-get upgrade -y
Bước 2. Cài đặt Nginx
Để cài đặt máy chủ web Nginx, hãy thực hiện lệnh sau:
sudo apt install nginx -y
Sau khi cài đặt hoàn tất, hãy khởi động và kích hoạt dịch vụ Nginx:
sudo systemctl start nginx && sudo systemctl enable nginx
Để kiểm tra trạng thái của dịch vụ Nginx, bạn có thể thực hiện lệnh sau:
systemctl status nginx
Bạn sẽ nhận được kết quả đầu ra sau:
root@host:~# systemctl status nginx
● nginx.service - A high performance web server and a reverse proxy server
Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
Active: active (running) since Tue 2023-10-10 03:47:12 CDT; 7s ago
Docs: man:nginx(8)
Main PID: 2401 (nginx)
Tasks: 4 (limit: 4558)
Memory: 4.0M
CPU: 84ms
CGroup: /system.slice/nginx.service
├─2401 "nginx: master process /usr/sbin/nginx -g daemon on; master_process on;"
├─2402 "nginx: worker process"
├─2403 "nginx: worker process"
└─2404 "nginx: worker process"
Oct 10 03:47:12 host.test.vps systemd[1]: Starting A high performance web server and a reverse proxy server...
Oct 10 03:47:12 host.test.vps systemd[1]: Started A high performance web server and a reverse proxy server.
Bước 3. Cài đặt MongoDB
RocketChat cần một dịch vụ cơ sở dữ liệu để hoạt động và lưu trữ thông tin. Chúng ta cần cài đặt dịch vụ cơ sở dữ liệu MongoDB. Đầu tiên, chúng ta sẽ thêm kho lưu trữ MongoDB và khóa GPG:
wget -qO - https://www.mongodb.org/static/pgp/server-6.0.asc | gpg --dearmor | sudo tee /usr/share/keyrings/mongodb.gpg > /dev/null
echo "deb [ arch=amd64,arm64 signed-by=/usr/share/keyrings/mongodb.gpg ] https://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/6.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-6.0.list
Sau khi hoàn tất, hãy cập nhật hệ thống và cài đặt MongoDB:
sudo apt update
sudo apt install mongodb-org
Sau khi cài đặt, hãy khởi động và kích hoạt dịch vụ:
sudo systemctl start mongod && sudo systemctl enable mongod
Để kiểm tra trạng thái của dịch vụ MongoDB, bạn có thể chạy lệnh sau:
sudo systemctl status mongod
Bạn sẽ nhận được kết quả đầu ra sau:
root@host:~# sudo systemctl status mongod
● mongod.service - MongoDB Database Server
Loaded: loaded (/lib/systemd/system/mongod.service; enabled; vendor preset: enabled)
Active: active (running) since Sun 2022-10-11 07:36:21 UTC; 2s ago
Docs: https://docs.mongodb.org/manual
Main PID: 81644 (mongod)
Memory: 57.1M
CGroup: /system.slice/mongod.service
└─81644 /usr/bin/mongod --config /etc/mongod.conf
Bước 4. Cài đặt RocketChat trên Ubuntu 22.04
Tải và giải nén phiên bản RocketChat mới nhất:
curl -L https://releases.rocket.chat/latest/download -o /opt/rocket.chat.tgz
tar -xzf /opt/rocket.chat.tgz -C /opt
Sau đó vào thư mục giải nén RocketChat và thực hiện các lệnh sau để cài đặt:
mv /opt/bundle/ /opt/RocketChat
cd /opt/RocketChat/programs/server
npm install
Bước 5. Tạo dịch vụ RocketChat
Trước khi tạo dịch vụ, chúng ta cần tạo một người dùng hệ thống mà RocketChat sẽ chạy dưới dạng:
sudo useradd -M rocketchat && sudo usermod -L rocketchat
sudo chown -R rocketchat:rocketchat /opt/RocketChat
Khi người dùng được tạo, hãy định cấu hình bộ lưu trữ cho MongoDB:
sudo sed -i "s/^# engine:/ engine: wiredTiger/" /etc/mongod.conf
sudo sed -i "s/^#replication:/replication:\n replSetName: rs01/" /etc/mongod.conf
Khi điều này được thêm vào, chúng ta cần tạo tệp dịch vụ:
touch /lib/systemd/system/rocketchat.service
Mở tệp bằng trình soạn thảo văn bản yêu thích của bạn và dán các dòng mã sau:
[Unit]
Description=The Rocket.Chat server
After=network.target remote-fs.target nss-lookup.target nginx.service mongod.service
[Service]
ExecStart=/usr/bin/node /opt/RocketChat/main.js
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=rocketchat
User=rocketchat
Environment=MONGO_URL=mongodb://localhost:27017/rocketchat?replicaSet=rs01 MONGO_OPLOG_URL=mongodb://localhost:27017/local?replicaSet=rs01 ROOT_URL=http://localhost:3000/ PORT=3000
[Install]
WantedBy=multi-user.target
Tải lại Daemon và khởi động dịch vụ RocketChat. Bạn cũng nên kích hoạt dịch vụ để chạy khi khởi động:
sudo systemctl daemon-reload
sudo systemctl start rocketchat
sudo systemctl enable rocketchat
Với điều này, phiên bản RocketChat của bạn sẽ trong trạng thái đang chạy.
Bước 6. Định cấu hình RocketChat với Proxy ngược Nginx
Tạo tệp cấu hình Nginx.
touch /etc/nginx/sites-enabled/rocketchat.conf
Sau khi tạo, hãy mở nó bằng trình soạn thảo văn bản yêu thích của bạn và dán các dòng mã sau:
server {
listen 80;
server_name YourDomainNameHere;
access_log /var/log/nginx/rocket_access.log;
error_log /var/log/nginx/rocket_error.log;
location / {
proxy_pass http://127.0.0.1:3000/;
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;
}
}
Lưu tệp, đóng tệp và kiểm tra cấu hình Nginx để tìm lỗi cú pháp bằng lệnh sau:
nginx -t
Nếu mọi thứ đều ổn, bạn sẽ nhận được kết quả đầu ra sau:
root@host:~# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
=>> Cách cài đặt osTicket trên VPS Ubuntu
Giao diện rất trực quan và bạn sẽ cần tạo tên, thiết lập tài khoản quản trị viên và tất nhiên là cần một mật khẩu mạnh. Liên hệ với bộ phận hỗ trợ kỹ thuật của VPS Chính hãng ngay hôm nay nếu bạn có bất kì câu hỏi nào về quá trình sử dụng VPS hay muốn đăng ký sử dụng các gói VPS giá rẻ tại đây. Chúng tôi luôn sẵn sàng 24/7 và giúp máy chủ của bạn chạy trơn tru ngay lập tức. Cảm ơn đã theo dõi bài viết!