华为云 Flexus X 实例 docker 部署 Rocket.Chat 构建属于自己的团队通讯协作平台
· 华为云最近正在举办 828 B2B 企业节,Flexus X 实例的促销力度非常大,特别适合那些对算力性能有高要求的小伙伴。如果你有自建 MySQL、Redis、Nginx 等服务的需求,一定不要错过这个机会。赶紧去看看吧!
什么是华为云 Flexus X 实例
· 华为云 Flexus X 实例云服务是新一代开箱即用、体验跃级、面向中小企业和开发者打造的高品价比云服务产品。
· Flexus 云服务器 X 实例是新一代面向中小企业和开发者打造的柔性算力云服务器,可智能感知业务负载,适用于电商直播、企业建站、开发测试环境、游戏服务器、音视频服务等中低负载场景。
开始接触华为云 Flexus 云服务器 X 实例
· 获取华为云 Flexus 云服务器 X 实例后第一步就是先去华为云上重置服务器密码


· 重置完毕后用 ssh 工具登录华为云服务器,这里我用的是 finalshell,也可以用其他工具登陆比如 xshell 或者 Putty 都可以

· 登录上去查看硬盘大小,可以看到是 100g 硬盘,硬盘总大小是正常的
root@flexusx-ebe8:~# df -hFilesystem Size Used Avail Use% Mounted ontmpfs 1.2G 1.1M 1.2G 1% /run/dev/vda1 99G 4.2G 90G 5% /tmpfs 5.7G 0 5.7G 0% /dev/shmtmpfs 5.0M 0 5.0M 0% /run/locktmpfs 1.2G 4.0K 1.2G 1% /run/user/0
· 然后输入 ufw status 可以看到默认防火墙是关闭的,因此我们就不需要额外再去配置端口开放相关的配置,只要在华为云安全组配置端口开放就可以了
root@flexusx-ebe8:~# ufw statusStatus: inactive
docker 环境的安装
· 然后进行 docker 容器的安装,安装最新版本的 docker
· 这里因为 docker 现在已经无法直接通过网络安装,所以我们通过离线安装的方式安装 docker 环境
· 从官网下载离线包
https://download.docker.com/linux/ubuntu/dists/jammy/pool/stable/amd64/

· 如图所示,把离线包传到服务器上,进行安装
dpkg -i *.deb
· 查看安装的 docker 版本
root@flexusx-ebe8:/home/docker# docker -vDocker version 27.1.2, build d01f264
· 至此 docker 容器环境安装完毕
docker-compose 安装
· docker 容器安装完毕后,开始安装 docker-compose
· https://github.com/docker/compose/tags离线下载 docker-compose 的包
· 因为我是 x86-64 的环境,所以从中找到 docker-compose-linux-x86_64 进行下载
· 下载完毕后上传到服务器,然后执行 sudo cp -f docker-compose-linux-x86_64 /usr/local/bin/docker-compose
· 然后授予可执行权限,sudo chmod +x /usr/local/bin/docker-compose
· 查看 docker-compose 版本
root@flexusx-ebe8:/# sudo docker-compose -vDocker Compose version v2.29.2
· 这样 docker-compose 就安装完毕了
什么是 Rocket.Chat
· Rocket.Chat 是一个开源的团队通讯和协作平台,类似于 Slack 或 Microsoft Teams,专为团队提供实时沟通、文件共享、音视频通话、视频会议和其他协作工具。Rocket.Chat 特别适合企业、社区、开发团队或任何需要安全通信和协作的组织。
主要功能:
· 即时通讯:支持一对一聊天、群组聊天、公开和私有频道。
· 音视频通话:支持音频、视频通话和屏幕共享,方便团队进行远程会议。
· 文件共享:可以直接在聊天中发送和接收文件,支持不同格式。
· 通知提醒:支持桌面通知和移动推送,保证团队成员及时获取信息。
· 自定义界面:用户可以根据需求定制聊天界面,适应不同的团队协作方式。
· 集成与扩展:可以与其他工具(如 GitHub、Jira、Trello、Zoom)集成,支持通过 Webhooks、API 进行二次开发。
· 安全性:支持端到端加密、自托管和权限控制,保证数据的安全性和隐私。
· 多平台支持:提供桌面、Web 和移动端应用,支持 Windows、macOS、Linux、iOS、Android。
开始部署 Rocket.Chat
· 访问 Rocket.Chat 官网https://www.rocket.chat/

· 点击找到安装页,选择 docker 安装

· 下载 compose.yml 文件 curl -L https://raw.githubusercontent.com/RocketChat/Docker.Official.Image/master/compose.yml -O
root@flexusx-ebe8:/home/docker/rocketchat# curl -L https://raw.githubusercontent.com/RocketChat/Docker.Official.Image/master/compose.yml -O % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed100 1904 100 1904 0 0 1521 0 0:00:01 0:00:01 --:--:-- 1521
· 然后创建一个环境变量文件.env,内容如下
### Rocket.Chat configuration# Rocket.Chat version# see:- https://github.com/RocketChat/Rocket.Chat/releases#RELEASE=# MongoDB endpoint (include ?replicaSet= parameter)#MONGO_URL=# MongoDB endpoint to the local database#MONGO_OPLOG_URL=# IP to bind the process to#BIND_IP=# URL used to access your Rocket.Chat instanceROOT_URL=http://弹性公网 ip:3000# Port Rocket.Chat runs on (in-container)#PORT=# Port on the host to bind to#HOST_PORT=### MongoDB configuration# MongoDB version/image tag#MONGODB_VERSION=# See:- https://hub.docker.com/r/bitnami/mongodb### Traefik config (if enabled)# Traefik version/image tag#TRAEFIK_RELEASE=# Domain for https (change ROOT_URL & BIND_IP accordingly)#DOMAIN=# Email for certificate notifications#LETSENCRYPT_EMAIL=
· 然后执行 docker-compose up -d
root@flexusx-ebe8:/home/docker/rocketchat# docker-compose up -d[+] Running 12/12 ✔ mongodb Pulled 691.6s ✔ 6754bb5cae91 Pull complete 688.6s ✔ rocketchat Pulled 435.1s ✔ 26c5c85e47da Pull complete 61.0s ✔ 96da4c1974ec Pull complete 61.0s ✔ 286584c9c618 Pull complete 65.0s ✔ ec51043fad6b Pull complete 71.4s ✔ 10845595c672 Pull complete 71.4s ✔ 3b44d79a5b2d Pull complete 155.1s ✔ 5b39dc932897 Pull complete 428.1s ✔ ae434713252a Pull complete 428.8s ✔ 4f4fb700ef54 Pull complete 428.8s[+] Running 4/4 ✔ Network rocketchat_default Created 0.1s ✔ Volume "rocketchat_mongodb_data" Created 0.0s ✔ Container rocketchat-mongodb-1 Started 2.8s ✔ Container rocketchat-rocketchat-1 Started 0.4s
· 查看 Rocket.Chat 启动状态 docker ps
root@flexusx-ebe8:/home/docker/rocketchat# docker psCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES10a5472dd164 registry.rocket.chat/rocketchat/rocket.chat:latest "docker-entrypoint.s…" 4 minutes ago Up 4 minutes 0.0.0.0:3000->3000/tcp rocketchat-rocketchat-1233fa6eb22eb bitnami/mongodb:5.0 "/opt/bitnami/script…" 4 minutes ago Up 4 minutes 27017/tcp rocketchat-mongodb-1
· 此时 docker 启动 Rocket.Chat 已经完毕,还需要配置华为云安全组开放端口
配置 Flexus 云服务器 X 实例安全组
· 经过上面部署 Rocket.Chat 服务,这时候服务是已经部署完毕了,但是我们还没法通过外网进行访问,还需要对 Flexus 云服务器 X 安全组的配置进行修改
· 进入安全组的配置页面

· 新建安全组

· 这里我们开放 3000 端口
· 然后加入新建的安全组

· 这样我们的实例的端口也就开放成功了
开始使用 Rocket.Chat
· 输入 http://弹性公网 ip:3000/

· 按顺序一步步配置即可,其中最后会发送邮件到配置的邮箱

· 进入首页


· 至此华为云 Flexus X 实例 docker 部署 Rocket.Chat 构建属于自己的团队通讯协作平台完成
欢迎大家一起加入华为云!

评论