全球主机交流论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

CeraNetworks网络延迟测速工具IP归属甄别会员请立即修改密码
查看: 2016|回复: 20

快速搭建一个端对端加密的在线聊天室

[复制链接]
发表于 2021-2-27 16:27:42 | 显示全部楼层 |阅读模式
看到有人发了一个在线聊天室,感觉挺有意思的就做个教程

简介

程序:rocket.chat

官网:https://rocket.chat/

项目:https://github.com/RocketChat/Rocket.Chat
推广:本次演示的为腾讯云轻量学生机升级版,108年2C4G6M1000GB最高续费4年十分的香 学生机购买:https://curl.qcloud.com/hQiFtUjz

良心云的轻量延期了,延长到了3.10号(感觉会一直延长下去),如果学生机买不到可以参考这里https://curl.qcloud.com/PewqZwe6 1C2G5M 488三年 找个八折代理跟学生机原价差不多

有资格抢学生机的可以等晚上零点补货再抢
正文:

配置环境

1、进入宝塔软件商店,安装PM2管理器和MongoDB:



2、进入PM2管理器设置,将node版本改为12.14.0



3、进入MongoDB设置,点击配置文件找到 “# Where and how to store data.” 将存储数据的地址修改为以下:

原配置


修改为:


  1. storage:
  2.   dbPath: /www/server/mongodb/Rocket.Chat
  3.   directoryPerDB: true
  4.   engine: mmapv1
复制代码





4、找到 “#replication:”,我的是在26行,修改如下

原配置:



修改后配置:


  1. replication:
  2. replSetName: rs01
复制代码





配置完成后MongoDB会默认关闭,这时候需要登录一下ssh进行创建存储文件夹授权等操作


  1. mkdir /www/server/mongodb/Rocket.Chat
  2. chown mongo:mongo /www/server/mongodb/Rocket.Chat
  3. /etc/init.d/mongodb start
  4. mongo --eval "printjson(rs.initiate())"
复制代码


安装依赖

命令行下运行以下代码

Ubuntu/Debian

  1. apt install -y graphicsmagick
复制代码


Centos

  1. yum install -y  GraphicsMagick
复制代码


安装Rocket.Chat主程序

逐条运行以下命令


  1. wget -O rocket.chat.tgz https://releases.rocket.chat/latest/download
  2. //安装时版本号为3.11.1
  3. tar -xzf rocket.chat.tgz && rm -rf rocket.chat.tgz
  4. mv bundle /opt/Rocket.Chat
  5. cd /opt/Rocket.Chat
  6. npm install -g inherits
  7. cd programs/server
  8. npm install
复制代码



启动

逐条运行以下代码


  1. ln -sf $(command -v node) /usr/bin/node
  2. useradd -M rocketchat && usermod -L rocketchat
  3. chown -R rocketchat:rocketchat /opt/Rocket.Chat
复制代码



鉴于需要长期使用,可以选择是否配置守护进程。需要的就复制下面代码整体粘贴运行


  1. cat > /etc/systemd/system/rocketchat.service <<EOF
  2. [Unit]
  3. Description=Rocket.Chat
  4. After=network.target
  5. Wants=network.target

  6. [Service]
  7. ExecStart=$(command -v node) main.js
  8. StandardOutput=syslog
  9. StandardError=syslog
  10. SyslogIdentifier=rocketchat
  11. User=rocketchat
  12. WorkingDirectory=/opt/Rocket.Chat
  13. Environment=MONGO_URL=mongodb://127.0.0.1:27017/rocketchat?replicaSet=rs01
  14. MONGO_OPLOG_URL=mongodb://127.0.0.1:27017/local?replicaSet=rs01 ROOT_URL=http://127.0.0.1:3000/ PORT=3000
  15. Type=simple
  16. Restart=on-failure
  17. RestartSec=42s

  18. [Install]
  19. WantedBy=multi-user.target
  20. EOF
复制代码



然后启动Rocket.Chat

  1. systemctl start rocketchat
复制代码

查看Rocket.Chat的状态:


  1. systemctl status rocketchat
复制代码



设置开机自启:


  1. systemctl enable rocketchat
复制代码



然后去到宝塔安全里面,放行3000端口,此时就可以通过IP:3000访问了。

各大云厂商的云服务器也需要放行3000端口,



腾讯云轻量服务器添加防火墙:

进入到服务器管理面板然后防火墙放行



配置域名

现在直接访问ip:3000就可以访问了,为了正式一点我们配置一下域名

试了一下直接用宝塔的反代可以是可以但是会有点小问题,所以我们手动配置下

进入站点的配置文件,插入如下代码:


  1. location ~ ^/.* {
  2. proxy_pass http://127.0.0.1:3000;
  3. proxy_set_header Host             $host;
  4. proxy_set_header X-Real-IP        $remote_addr;
  5. proxy_set_header X-Forwarded-For  $proxy_add_x_forwarded_for;

  6. proxy_set_header Upgrade $http_upgrade;
  7. proxy_set_header Connection "upgrade";
  8. proxy_set_header X-Forward-Proto http;
  9. proxy_set_header X-Nginx-Proxy true;
  10. proxy_http_version 1.1;

  11. proxy_redirect off;
  12. }
复制代码



再配置一下ssl证书就大功告成啦

一个LOC大佬已经搭建好的聊天室:

[srl.srl](https://srl.srl/home)

注意事项

免费的版本有用户和推送消息等限制哦,如果用户量大建议升级一下套餐。



本文首发地址:https://2demo.top/200.html
发表于 2021-2-27 16:50:28 | 显示全部楼层
太复杂了
发表于 2021-2-27 16:58:09 | 显示全部楼层
不如直接用TG...
发表于 2021-2-27 17:04:15 | 显示全部楼层
跑起来占用多少?
发表于 2021-2-27 17:10:03 | 显示全部楼层
pathc 发表于 2021-2-27 17:04
跑起来占用多少?

之前發過貼,當時有網友回覆稱這個平臺如果人數上升,會引起內存很快漲上去,我估計官方的2C2G的推薦值是在比較優化的情況下完成的。

樓主這個還是麻煩了些,官方推薦的方式是用snapd,幾行命令就全部完成了。
類似docker,當然官方也提供docker的方式。
发表于 2021-2-27 17:11:29 | 显示全部楼层
pathc 发表于 2021-2-27 17:04
跑起来占用多少?

之前發過貼,當時有網友回覆稱這個平臺如果人數上升,會引起內存很快漲上去,我估計官方的2C2G的推薦值是在比較優化的情況下完成的。

樓主這個還是麻煩了些,官方推薦的方式是用snapd,幾行命令就全部完成了。
類似docker,當然官方也提供docker的方式。
 楼主| 发表于 2021-2-27 17:14:18 | 显示全部楼层
aRNoLD 发表于 2021-2-27 17:11
之前發過貼,當時有網友回覆稱這個平臺如果人數上升,會引起內存很快漲上去,我估計官方的2C2G的推薦值是 ...

所以才用升级之后的学生机,不然内存顶不住,同时在线几十个人应该还是可以的
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|全球主机交流论坛

GMT+8, 2024-3-29 07:21 , Processed in 0.068058 second(s), 9 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表