[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