.:. 草榴社区 » 技术讨论区 » 教你如何在服务器上搭建端对端加密的聊天平台Rocket.Chat[5P]
--> 本页主题: 教你如何在服务器上搭建端对端加密的聊天平台Rocket.Chat[5P] 字体大小 宽屏显示 只看楼主 最新点评 热门评论 时间顺序
木马叔叔


级别:圣骑士 ( 11 )
发帖:692
威望:102 点
金钱:2098 USD
贡献:34043 点
註册:2011-06-06


教你如何在服务器上搭建端对端加密的聊天平台Rocket.Chat[5P]



前言:由于某些众所周知的原因,端对端聊天在某国是被禁止的,但是可以通过自己搭建的方式,实现与朋友的端对端聊天。

这种方法的优点在于其代码是开源的,而且数据也存放在自己的服务器上,相比市面的端对端聊天软件还是比较安全的。

下面就以Ubuntu为例,聊聊怎么以Docker的形式搭建端加密的聊天平台Rocket.Chat。

1. 安装Docker和Docker Compose:

1.1 码头工人

引用

curl -fsSL https://test.docker.com -o test-docker.sh
sudo sh test-docker.sh

1.2 码头工人撰写
引用

sudo curl -L "https://github.com/docker/compose/releases/download/v2.2.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose

2. 在服务器的root路径下新建一个名为rocketchat的文件夹:
引用

mkdir /root/rocketchat
cd /root/rocketchat

3. 去Rocket.Chat的Github https://github.com/RocketChat 下载docker-compose.ymlenv.example文件,并上传到/root/rocketchat路径下。嫌懒的可以直接复制下面的代码:

3.1 docker-compose.yml
复制代码
  1. volumes:
  2.   mongodb_data: { driver: local }
  3. services:
  4.   rocketchat:
  5.     image: registry.rocket.chat/rocketchat/rocket.chat:${RELEASE:-latest}
  6.     restart: always
  7.     labels:
  8.       traefik.enable: "true"
  9.       traefik.ht@Gue^33D-9#[email]2nv@tp.routers.rocketchat.rule[/email]: Host(`${DOMAIN:-}`)
  10.       traefik.ht@Gue^33D-9#[email]2nv@tp.routers.rocketchat.tls[/email]: "true"
  11.       traefik.ht@Gue^33D-9#[email]2nv@tp.routers.rocketchat.entr[/email]ypoints: https
  12.       traefik.ht@Gue^33D-9#[email]2nv@tp.routers.rocketchat.tls.cert[/email]resolver: le
  13.     environment:
  14.       MONGO_URL: "${MONGO_URL:-\
  15.         mongodb://${MONGODB_ADVERTISED_HOSTNAME:-mongodb}:${MONGODB_INITIAL_PRIMARY_PORT_NUMBER:-27017}/\
  16.         ${MONGODB_DATABASE:-rocketchat}?replicaSet=${MONGODB_REPLICA_SET_NAME:-rs0}}"
  17.       MONGO_OPLOG_URL: "${MONGO_OPLOG_URL:\
  18.         -mongodb://${MONGODB_ADVERTISED_HOSTNAME:-mongodb}:${MONGODB_INITIAL_PRIMARY_PORT_NUMBER:-27017}/\
  19.         local?replicaSet=${MONGODB_REPLICA_SET_NAME:-rs0}}"
  20.       ROOT_URL: ${ROOT_URL:-http://localhost:${HOST_PORT:-3000}}
  21.       PORT: ${PORT:-3000}
  22.       DEPLOY_METHOD: docker
  23.       DEPLOY_PLATFORM: ${DEPLOY_PLATFORM:-}
  24.       REG_TOKEN: ${REG_TOKEN:-}
  25.     depends_on:
  26.       - mongodb
  27.     expose:
  28.       - ${PORT:-3000}
  29.     ports:
  30.       - "${BIND_IP:-0.0.0.0}:${HOST_PORT:-3000}:${PORT:-3000}"
  31.   mongodb:
  32.     image: docker.io/bitnami/mongodb:${MONGODB_VERSION:-5.0}
  33.     restart: always
  34.     volumes:
  35.       - mongodb_data:/bitnami/mongodb
  36.     environment:
  37.       MONGODB_REPLICA_SET_MODE: primary
  38.       MONGODB_REPLICA_SET_NAME: ${MONGODB_REPLICA_SET_NAME:-rs0}
  39.       MONGODB_PORT_NUMBER: ${MONGODB_PORT_NUMBER:-27017}
  40.       MONGODB_INITIAL_PRIMARY_HOST: ${MONGODB_INITIAL_PRIMARY_HOST:-mongodb}
  41.       MONGODB_INITIAL_PRIMARY_PORT_NUMBER: ${MONGODB_INITIAL_PRIMARY_PORT_NUMBER:-27017}
  42.       MONGODB_ADVERTISED_HOSTNAME: ${MONGODB_ADVERTISED_HOSTNAME:-mongodb}
  43.       MONGODB_ENABLE_JOURNAL: ${MONGODB_ENABLE_JOURNAL:-true}
  44.       ALLOW_EMPTY_PASSWORD: ${ALLOW_EMPTY_PASSWORD:-yes}
复制代码

3.2 环境示例
复制代码
  1. ### Rocket.Chat configuration
  2. # Rocket.Chat version
  3. # see:- https://github.com/RocketChat/Rocket.Chat/releases
  4. #RELEASE=
  5. # MongoDB endpoint (include ?replicaSet= parameter)
  6. #MONGO_URL=
  7. # MongoDB endpoint to the local database
  8. #MONGO_OPLOG_URL=
  9. # IP to bind the process to
  10. #BIND_IP=
  11. # URL used to access your Rocket.Chat instance
  12. #ROOT_URL=
  13. # Port Rocket.Chat runs on (in-container)
  14. #PORT=
  15. # Port on the host to bind to
  16. #HOST_PORT=
  17. ### MongoDB configuration
  18. # MongoDB version/image tag
  19. #MONGODB_VERSION=
  20. # See:- https://hub.docker.com/r/bitnami/mongodb
  21. ### Traefik config (if enabled)
  22. # Traefik version/image tag
  23. #TRAEFIK_RELEASE=
  24. # Domain for https (change ROOT_URL & BIND_IP accordingly)
  25. #DOMAIN=
  26. # Email for certificate notifications
  27. #LETSENCRYPT_EMAIL=
复制代码

3.3 修改环境示例:
引用

#PORT=
修改为
PORT=服务器公网IP或域名

4. 放行3000端口;

5. 运行Docker(下载文件需要一段时间):
引用

docker compose up -d

6. Docker运行后(实测还需要再等待一段时间),打开下面这个网址,注册管理员账户(第一次注册的默认为管理员)
引用

服务器公网IP或域名:3000 

7. 然后就可以开心的玩耍了,如果嫌访问地址带端口有点麻烦,再做个反代就行了。
防水图:





赞(32)
DMCA / ABUSE REPORT | TOP Posted: 08-03 12:05 楼主 引用 | 发表评论
白贲


级别:圣骑士 ( 11 )
发帖:3467
威望:235 点
金钱:14192 USD
贡献:24700 点
註册:2023-02-23


感谢分享
TOP Posted: 08-03 12:09 #1楼 引用 | 点评
随风嫖


级别:骑士 ( 10 )
发帖:2405
威望:246 点
金钱:77701833 USD
贡献:2700 点
註册:2016-07-15

感谢分享
TOP Posted: 08-03 12:11 #2楼 引用 | 点评
qqq0623


级别:精灵王 ( 12 )
发帖:48952
威望:4778 点
金钱:1984216 USD
贡献:1137 点
註册:2011-06-06

感谢分享
TOP Posted: 08-03 12:49 #3楼 引用 | 点评
天外非仙


级别:光明使者 ( 14 )
发帖:25763
威望:36029 点
金钱:46510 USD
贡献:110606 点
註册:2011-06-06
认证: 博彩区特使
2024-04-04

支持技术贴 
TOP Posted: 08-03 12:58 #4楼 引用 | 点评
千钧一笑过


级别:侠客 ( 9 )
发帖:1323
威望:133 点
金钱:6219 USD
贡献:0 点
註册:2023-02-03

感谢分享
TOP Posted: 08-03 13:26 #5楼 引用 | 点评
子树


级别:精灵王 ( 12 )
发帖:24198
威望:2470 点
金钱:34340 USD
贡献:0 点
註册:2022-11-15

感谢分享
TOP Posted: 08-03 13:52 #6楼 引用 | 点评
臀控


级别:侠客 ( 9 )
发帖:990
威望:100 点
金钱:991 USD
贡献:8300 点
註册:2020-03-18

学习一下
TOP Posted: 08-03 13:53 #7楼 引用 | 点评
什么名字好记


级别:新手上路 ( 8 )
发帖:853
威望:96 点
金钱:4903 USD
贡献:0 点
註册:2023-07-27

感谢分享
TOP Posted: 08-03 13:54 #8楼 引用 | 点评
两性教授


级别:精灵王 ( 12 )
发帖:22540
威望:2251 点
金钱:43032 USD
贡献:2177 点
註册:2021-09-20

感谢分享  有点技术含量,一般人弄不了
TOP Posted: 08-03 14:01 #9楼 引用 | 点评
Loopll哼


级别:新手上路 ( 8 )
发帖:136
威望:34 点
金钱:1 USD
贡献:0 点
註册:2023-07-31

看不太懂,但是很厉害,帮顶增加热度。
TOP Posted: 08-03 15:39 #10楼 引用 | 点评
躺在我胸口


级别:骑士 ( 10 )
发帖:4127
威望:413 点
金钱:4476 USD
贡献:0 点
註册:2022-02-01


感谢分享
TOP Posted: 08-03 16:50 #11楼 引用 | 点评
飞无痕


级别:精灵王 ( 12 )
发帖:2883
威望:976 点
金钱:7479 USD
贡献:7315 点
註册:2023-04-27

1024
TOP Posted: 08-03 16:58 #12楼 引用 | 点评
jasonmonkey


级别:骑士 ( 10 )
发帖:1406
威望:416 点
金钱:30475 USD
贡献:5000 点
註册:2022-10-24

不懂帮顶一下
TOP Posted: 08-03 17:02 #13楼 引用 | 点评
灭虫灵


级别:禁止发言 ( 8 )
发帖:1939
威望:194 点
金钱:16235 USD
贡献:27763 点
註册:2023-07-30

好像很厉害的样子
TOP Posted: 08-03 17:56 #14楼 引用 | 点评
龙吟凤鸣


级别:骑士 ( 10 )
发帖:2296
威望:385 点
金钱:11955 USD
贡献:0 点
註册:2022-06-01

1024
TOP Posted: 08-03 18:34 #15楼 引用 | 点评
negen


级别:新手上路 ( 8 )
发帖:807
威望:83 点
金钱:9208 USD
贡献:1 点
註册:2022-07-13

作为一个小白来说,真的是完全看不懂。
TOP Posted: 08-03 18:35 #16楼 引用 | 点评
岱宗


级别:圣骑士 ( 11 )
发帖:1583
威望:227 点
金钱:2802074 USD
贡献:31024 点
註册:2016-10-24


不好用,毕竟人家定位是团队协作im。个人玩其实tinode更简单,直接任意浏览器就行。安卓限制不能连接非系统信任证书加密的链接,导致安卓客户端不好用,除非自己花钱买高价证书。。
TOP Posted: 08-03 19:27 #17楼 引用 | 点评
zhanping


级别:骑士 ( 10 )
发帖:3252
威望:458 点
金钱:31012 USD
贡献:8 点
註册:2015-01-22

支持大佬发技术贴
TOP Posted: 08-03 19:29 #18楼 引用 | 点评
箐城


级别:圣骑士 ( 11 )
发帖:3566
威望:311 点
金钱:14030 USD
贡献:16688 点
註册:2018-07-01

有时间整整
TOP Posted: 08-03 19:45 #19楼 引用 | 点评
捉鹅医肚饿


级别:精灵王 ( 12 )
发帖:3541
威望:370 点
金钱:7596 USD
贡献:100000 点
註册:2022-06-06

感谢分享
TOP Posted: 08-03 19:49 #20楼 引用 | 点评
玩逼归操


级别:光明使者 ( 14 )
发帖:33019
威望:3324 点
金钱:11525705 USD
贡献:591708 点
註册:2011-06-06

感谢分享
TOP Posted: 08-03 21:20 #21楼 引用 | 点评
缺氧过后的爱


级别:骑士 ( 10 )
发帖:4442
威望:445 点
金钱:4855 USD
贡献:0 点
註册:2019-10-26

支持分享
TOP Posted: 08-03 21:46 #22楼 引用 | 点评
冲击力


级别:骑士 ( 10 )
发帖:4372
威望:438 点
金钱:4752 USD
贡献:0 点
註册:2022-04-29


谢谢分享
TOP Posted: 08-03 23:10 #23楼 引用 | 点评
张震岳


级别:圣骑士 ( 11 )
发帖:3063
威望:634 点
金钱:2128 USD
贡献:7500 点
註册:2019-10-24

不是很懂但感觉很厉害
TOP Posted: 08-03 23:21 #24楼 引用 | 点评

.:. 草榴社区 -> 技术讨论区

快速回帖 顶端
内容
HTML 代码不可用

使用签名
Wind Code自动转换

按 Ctrl+Enter 直接提交