2life.top 大佬有话说 :
快速搭建一个端对端加密的在线聊天室
看到有人发了一个在线聊天室,感觉挺有意思的就做个教程
简介
程序: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:
https://img.jpggod.com/file/jpggod/2021/02/27/da236f93936a946bf7f9499ef71b8918.png
2、进入PM2管理器设置,将node版本改为12.14.0
https://img.jpggod.com/file/jpggod/2021/02/27/f39a5eb8ab51d14b74f8e602e53a0d05.png
3、进入MongoDB设置,点击配置文件找到 “# Where and how to store data.” 将存储数据的地址修改为以下:
原配置
https://img.jpggod.com/file/jpggod/2021/02/27/875b4736e31d9ee83f7dbe38211a7a9b.png
修改为:
storage:
dbPath: /www/server/mongodb/Rocket.Chat
directoryPerDB: true
engine: mmapv1
https://img.jpggod.com/file/jpggod/2021/02/27/8736ac833dfad58d3945d9bb951ba7bc.png
4、找到 “#replication:”,我的是在26行,修改如下
原配置:
https://img.jpggod.com/file/jpggod/2021/02/27/fe42f9f29f225b78ab38d6a07193376e.png
修改后配置:
replication:
replSetName: rs01
https://img.jpggod.com/file/jpggod/2021/02/27/58432fda053ee787c7af37a02230c998.png
配置完成后MongoDB会默认关闭,这时候需要登录一下ssh进行创建存储文件夹授权等操作
mkdir /www/server/mongodb/Rocket.Chat
chown mongo:mongo /www/server/mongodb/Rocket.Chat
/etc/init.d/mongodb start
mongo –eval "printjson(rs.initiate())"
安装依赖
命令行下运行以下代码
Ubuntu/Debian
apt install -y graphicsmagick
Centos
yum install -yGraphicsMagick
安装Rocket.Chat主程序
逐条运行以下命令
wget -O rocket.chat.tgz https://releases.rocket.chat/latest/download
//安装时版本号为3.11.1
tar -xzf rocket.chat.tgz && rm -rf rocket.chat.tgz
mv bundle /opt/Rocket.Chat
cd /opt/Rocket.Chat
npm install -g inherits
cd programs/server
npm install
启动
逐条运行以下代码
ln -sf $(command -v node) /usr/bin/node
useradd -M rocketchat && usermod -L rocketchat
chown -R rocketchat:rocketchat /opt/Rocket.Chat
鉴于需要长期使用,可以选择是否配置守护进程。需要的就复制下面代码整体粘贴运行
cat > /etc/systemd/system/rocketchat.service <<EOF
Description=Rocket.Chat
After=network.target
Wants=network.target
ExecStart=$(command -v node) main.js
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=rocketchat
User=rocketchat
WorkingDirectory=/opt/Rocket.Chat
Environment=MONGO_URL=mongodb://127.0.0.1:27017/rocketchat?replicaSet=rs01
MONGO_OPLOG_URL=mongodb://127.0.0.1:27017/local?replicaSet=rs01 ROOT_URL=http://127.0.0.1:3000/ PORT=3000
Type=simple
Restart=on-failure
RestartSec=42s
WantedBy=multi-user.target
EOF
然后启动Rocket.Chat
systemctl start rocketchat
查看Rocket.Chat的状态:
systemctl status rocketchat
设置开机自启:
systemctl enable rocketchat
然后去到宝塔安全里面,放行3000端口,此时就可以通过IP:3000访问了。
各大云厂商的云服务器也需要放行3000端口,
腾讯云轻量服务器添加防火墙:
进入到服务器管理面板然后防火墙放行
https://img.jpggod.com/file/jpggod/2021/02/27/1584e94a2fdef69a39357781c5efa122.png
配置域名
现在直接访问ip:3000就可以访问了,为了正式一点我们配置一下域名
试了一下直接用宝塔的反代可以是可以但是会有点小问题,所以我们手动配置下
进入站点的配置文件,插入如下代码:
location ~ ^/.* {
proxy_pass http://127.0.0.1:3000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For$proxy_add_x_forwarded_for;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header X-Forward-Proto http;
proxy_set_header X-Nginx-Proxy true;
proxy_http_version 1.1;
proxy_redirect off;
}
再配置一下ssl证书就大功告成啦
一个LOC大佬已经搭建好的聊天室:
(https://srl.srl/home)
注意事项
免费的版本有用户和推送消息等限制哦,如果用户量大建议升级一下套餐。
https://img.jpggod.com/file/jpggod/2021/02/27/9d4571385bdc99012bd9ec503c8b7f19.png
本文首发地址:https://2demo.top/200.html
wifitry 大佬有话说 :
感谢分享
zhongziso 大佬有话说 :
mark
naiba 大佬有话说 :
太复杂了https://cdn.jsdelivr.net/gh/hishis/forum-master/public/images/patch.gif
kh1gv9 大佬有话说 :
战略Mark
yy10112001 大佬有话说 :
不如直接用TG…
pathc 大佬有话说 :
跑起来占用多少?
aRNoLD 大佬有话说 :
pathc 大佬有话说 : 2021-2-27 17:04
跑起来占用多少?
之前發過貼,當時有網友回覆稱這個平臺如果人數上升,會引起內存很快漲上去,我估計官方的2C2G的推薦值是在比較優化的情況下完成的。
樓主這個還是麻煩了些,官方推薦的方式是用snapd,幾行命令就全部完成了。
類似docker,當然官方也提供docker的方式。
aRNoLD 大佬有话说 :
pathc 大佬有话说 : 2021-2-27 17:04
跑起来占用多少?
之前發過貼,當時有網友回覆稱這個平臺如果人數上升,會引起內存很快漲上去,我估計官方的2C2G的推薦值是在比較優化的情況下完成的。
樓主這個還是麻煩了些,官方推薦的方式是用snapd,幾行命令就全部完成了。
類似docker,當然官方也提供docker的方式。
2life.top 大佬有话说 :
aRNoLD 大佬有话说 : 2021-2-27 17:11
之前發過貼,當時有網友回覆稱這個平臺如果人數上升,會引起內存很快漲上去,我估計官方的2C2G的推薦值是 …
所以才用升级之后的学生机,不然内存顶不住,同时在线几十个人应该还是可以的