[Docker] Cài đặt Rocket Chat bằng docker-compose
Rocket Chat là một nền tảng trò chuyện trực tuyến mã nguồn mở (open-source) được phát triển bởi Rocket Chat, Inc. Nền tảng này cho phép người dùng tạo các nhóm trò chuyện, gửi tin nhắn văn bản, hình ảnh, video và tệp đính kèm, và thực hiện cuộc gọi thoại và video trực tuyến.
Rocket Chat cung cấp khả năng tích hợp với các ứng dụng và dịch vụ khác như gSuite, Dropbox, GitHub và nhiều ứng dụng khác. Nó cũng có sẵn trên nhiều nền tảng, bao gồm các ứng dụng trên điện thoại di động, desktop và web.
Rocket Chat được sử dụng rộng rãi trong các doanh nghiệp, tổ chức phi lợi nhuận, cộng đồng và các tổ chức khác nhau để tăng cường giao tiếp và tương tác giữa các thành viên.
Hôm nay Nhân Hòa sẽ cùng các bạn cài đặt Rocket Chat – Phần mềm chát miễn phí mã nguồn mở phổ biến nhất cho công ty của bạn.
Điều kiện cài đặt
- Hệ điều hành linux
- Máy chủ của bạn cài Docker và docker-compose
Và trong phần demo này mình sử dụng ubuntu 22.04.01
I – Update hệ thống
apt update -y apt ugrade -y apt-get update -y apt-get upgrade -y reboot
II – Cài docker và docker compose
curl -fsSL https://get.docker.com -o get-docker.sh sh get-docker.sh service docker start systemctl enable docker
apt install docker-compose docker compose version apt install nginx
III – Cài đặt Rocket Chat
mkdir -p /var/www/chat/ cd /var/www/chat/
Tạo docker-compose.yml với nội dung như sau
Sau đó chạy lệnh docker-compose up
version: '2'
services:
rocketchat:
image: registry.rocket.chat/rocketchat/rocket.chat:4.7.0
command: >
bash -c
"for i in `seq 1 30`; do
node main.js &&
s=$$? && break || s=$$?;
echo \"Tried $$i times. Waiting 5 secs...\";
sleep 5;
done; (exit $$s)"
restart: unless-stopped
volumes:
- ./uploads1:/app/uploads
environment:
- PORT=3000
- ROOT_URL=http://localhost:3000
- MONGO_URL=mongodb://mongo:27017/rocketchat
- MONGO_OPLOG_URL=mongodb://mongo:27017/local
- REG_TOKEN=${REG_TOKEN}
# - MAIL_URL=smtp://smtp.email
# - HTTP_PROXY=http://proxy.domain.com
# - HTTPS_PROXY=http://proxy.domain.com
depends_on:
- mongo
ports:
- 3000:3000
labels:
- "traefik.backend=rocketchat"
- "traefik.frontend.rule=Host: your.domain.tld"
mongo:
image: mongo:4.0
restart: unless-stopped
volumes:
- ./data1/db:/data/db
#- ./data/dump:/dump
command: mongod --smallfiles --oplogSize 128 --replSet rs0 --storageEngine=mmapv1
labels:
- "traefik.enable=false"
# ports:
# - 27017:27017
# 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)
mongo-init-replica:
image: mongo:4.0
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)"
depends_on:
- mongo
Hình ảnh

Cài đặt thông tin SuperAdmin

Phần này tùy bạn có tạo proxy hay không nhé

Bạn hãy kiểm tra email đăng ký cho admin để verify
Sau đó tạo thử kênh và user, add user vào nhóm

Member

Hẹn gặp lại các bạn tại các bài viết khác tại wiki.nhanhoa.com

