搭建RoacketChat(v4.5.1)聊天服务。有生之年,我也能使用上自己搭建的聊天服务器

RocketChat简介

Rocket.Chat是一款开源的聊天软件。多client支持:Android,ISO,Windows,Mac,Linux,Web。安装部署简单、文档丰富,易于扩展。功能强大。支持群组聊天,私聊群,个人私聊,桌面通知,媒体嵌入,链接预览,文件上传,语音/视频聊天,截图等等。
项目开源地址:https://github.com/RocketChat
项目官方站点:https://rocket.chat

安装环境

CentOS7.5 win10
RocketChat的版本:v4.5.1(2022-3-12的最新版)
需要Node.js —v14.18.3,Mongodb (需要4.2以上),这里安装5.0.6版本。
公有云服务器可以,虚拟机上安装也可以,这里选择虚拟机安装。

开始安装

1、添加mongodb yum源仓库

cat << EOF | tee -a /etc/yum.repos.d/mongodb-org-5.0.repo[mongodb-org-5.0]name=MongoDB Repositorybaseurl=https://repo.mongodb.org/yum/redhat/7/mongodb-org/5.0/x86_64/        #安装的5版本gpgcheck=1enabled=1gpgkey=https://www.mongodb.org/static/pgp/server-5.0.ascEOF

2、添加node.js仓库

yum install -y curl && curl -sL https://rpm.nodesource.com/setup_12.x | bash -

3、安装nodejs mongodb-org

yum install -y gcc-c++ make nodejs mongodb-org

4、安装GraphicsMagick软件包

yum install -y epel-release && yum install -y GraphicsMagick

5、下载RocketChat源码包,并解压至/tmp目录下

curl -L https://releases.rocket.chat/latest/download -o /tmp/rocket.chat.tgz
tar -xzf /tmp/rocket.chat.tgz -C /tmp

4、安装node,并选择版本

npm install -g inherits n
#如果你不知道刚才下载RocketChat源码包时需要node的啥版本,下面可以查看
[root@ecs-8e58 ~]# vi /tmp/bundle/README 
This is a Meteor application bundle. It has only one external dependency:
Node.js v14.18.3. To run the application:           #可以看到要求node是v14.18.3版本$ (cd programs/server && npm install)$ export MONGO_URL='mongodb://user:password@host:port/databasename'$ export ROOT_URL='http://example.com'$ export MAIL_URL='smtp://user:password@mailhost:port/'$ node main.jsUse the PORT environment variable to set the port where the
application will listen. The default is 80, but that will require
root on most systems.Find out more about Meteor at meteor.com.
#下面调整node的版本
n 14.18.3             #你没有看错,就是这条命令

5、安装RocketChat相应的模块:

#安装模块
cd /tmp/bundle/programs/server && npm install
#移动文件,换名
mv /tmp/bundle /opt/Rocket.Chat
#创建rocketchat用户
useradd -M rocketchat && usermod -L rocketchat
chown -R rocketchat:rocketchat /opt/Rocket.Chat     #授权文件

6、设置RocketChat,有system启动

cat << EOF |sudo tee -a /lib/systemd/system/rocketchat.service[Unit]Description=The Rocket.Chat serverAfter=network.target remote-fs.target nss-lookup.target nginx.target mongod.target[Service]ExecStart=/usr/local/bin/node /opt/Rocket.Chat/main.jsStandardOutput=syslogStandardError=syslogSyslogIdentifier=rocketchatUser=rocketchat#注意:下面的那个IP,需要填写自己本机的IP,其它的不用修改
Environment=MONGO_URL=mongodb://localhost:27017/rocketchat?replicaSet=rs01 MONGO_OPLOG_URL=mongodb://192.168.9.130:27017/local?replicaSet=rs01 ROOT_URL=http://localhost:3000/ PORT=3000[Install]WantedBy=multi-user.targetEOF

7、设置mongodb的引擎和复制操作

sed -i "s/^# engine:/ engine: mmapv1/" /etc/mongod.confsed -i "s/^#replication:/replication:\n replSetName: rs01/" /etc/mongod.conf

8、启动mongodb

systemctl restart mongod && systemctl enable mongodmongo --eval "printjson(rs.initiate())"
#查看mongodb启动的端口:
ss -ntpul
...
tcp    LISTEN     0      128                          127.0.0.1:27017                                            *:*                   users:(("mongod",pid=8437,fd=13))
...

9、启动rocketchat服务

systemctl restart rocketchat && systemctl enable rocketchat
#查看rocketchat启动的端口
ss -ntpul
...
tcp    LISTEN     0      511                                  *:3000                                             *:*                   users:(("node",pid=9013,fd=47))
...

整体的Shell脚本如下:

[root@node1 ~]# cat aa.sh 
#!/bin/bash
cat << EOF | tee -a /etc/yum.repos.d/mongodb-org-5.0.repo[mongodb-org-5.0]name=MongoDB Repositorybaseurl=https://repo.mongodb.org/yum/redhat/7/mongodb-org/5.0/x86_64/gpgcheck=1enabled=1gpgkey=https://www.mongodb.org/static/pgp/server-5.0.ascEOFyum install -y curl && curl -sL https://rpm.nodesource.com/setup_12.x | bash -yum install -y gcc-c++ make nodejs mongodb-orgyum install -y epel-release && yum install -y GraphicsMagickcurl -L https://releases.rocket.chat/latest/download -o /tmp/rocket.chat.tgztar -xzf /tmp/rocket.chat.tgz -C /tmpnpm install -g inherits n && n 14.18.3cd /tmp/bundle/programs/server && npm installmv /tmp/bundle /opt/Rocket.Chatuseradd -M rocketchat && usermod -L rocketchatchown -R rocketchat:rocketchat /opt/Rocket.Chatcat << EOF |sudo tee -a /lib/systemd/system/rocketchat.service[Unit]Description=The Rocket.Chat serverAfter=network.target remote-fs.target nss-lookup.target nginx.target mongod.target[Service]ExecStart=/usr/local/bin/node /opt/Rocket.Chat/main.jsStandardOutput=syslogStandardError=syslogSyslogIdentifier=rocketchatUser=rocketchatEnvironment=MONGO_URL=mongodb://localhost:27017/rocketchat?replicaSet=rs01 MONGO_OPLOG_URL=mongodb://localhost:27017/local?replicaSet=rs01 ROOT_URL=http://192.168.9.130:3000/ PORT=3000[Install]WantedBy=multi-user.targetEOFsed -i "s/^# engine:/ engine: mmapv1/" /etc/mongod.confsed -i "s/^#replication:/replication:\n replSetName: rs01/" /etc/mongod.confsystemctl restart mongod && systemctl enable mongodmongo --eval "printjson(rs.initiate())"systemctl restart rocketchat && systemctl enable rocketchat

浏览器访问并配置登陆信息

浏览器输入:本地IP:3000
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

来看看聊天界面:
在这里插入图片描述
OK,RocketChat聊天服务就部署完成了,后续的聊天软件的使用下篇在更…

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/56970.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python——体育竞技分析,预测比赛成绩

体育竞技分析 需求&#xff1a;毫厘是多少&#xff1f;如何科学分析体育竞技比赛&#xff1f;输入&#xff1a;球员的水平输出&#xff1a;可预测的比赛成绩 体育竞技分析&#xff1a;模拟N场比赛 计算思维&#xff1a;抽象 自动化模拟&#xff1a;抽象比赛过程 自动化执行…

python体育竞技分析代码200行_【python】体育竞技分析:预测球队比赛成绩

体育竞技分析 一、程序总体框架及步骤&#xff1a; 步骤1&#xff1a;打印程序的介绍性信息 步骤2&#xff1a;获得程序运行参数&#xff1a;probA&#xff0c;probB&#xff0c;n 步骤3&#xff1a;利用球员A和B的能力值&#xff0c;模拟n局比赛 步骤4&#xff1a;输出球…

新浪体育——篮球足球的直播和战报爬取

新浪体育——篮球足球的直播和战报爬取 用到的包的介绍 以上是基于python3.6.5的新浪体育直播间篮球足球的直播和战报爬取所引用到的全部内外部包&#xff0c;下面将会挑几个与爬虫息息相关的包进行介绍。 1.lxml Python 标准库中自带了 xml 模块&#xff0c;但是性能不够好…

案例——中国篮球运动员的基本信息分析

案例——中国篮球运动员的基本信息分析 分析目标 1、计算中国男篮、女篮运动员的平均身高与平均体重 2、分析中国篮球运动员的年龄分布 3、计算中国篮球运动员的体质指数 数据获取 先导入可能需要用到的包 import pandas as pd import numpy as np import matplotlib.pypl…

【数据说第四期】篮球比赛中的投篮选择

篮球比赛中的投篮选择 参加过篮球比赛的同学&#xff0c;在球场上是否有这样的经历&#xff1f; 当上一次投篮未命中时&#xff0c;你会倾向于比上一次更近的距离出手投篮&#xff0c;当上一次投篮稳稳命中时&#xff0c;你会想尝试下比上一次更更远距离的出手。于是&#xff…

Firefox火狐浏览器强制使用阅读模式(添加插件法)

Firefox火狐浏览器强制使用阅读模式&#xff08;添加插件法&#xff09; 1.打开Firefox火狐浏览器 2.在地址栏输入 about:addons 3.点击左边的【扩展】 4.搜索Activate Reader View&#xff0c;点击【安装】&#xff0c;之后就可以看到任务栏的左上角有一个书本样子的按钮…

UFT14.52用谷歌浏览器chrome、火狐浏览器firefox 跑自动化

安装了14.52 发现录制的下面不能选择 谷歌、火狐浏览器&#xff0c;是因为浏览器不能用&#xff0c;能用了就有&#xff1a; 插件下载地址&#xff1a;https://chrome.google.com/webstore/detail/micro-focus-uft-agent/kglbdihdcnciobeihioplammnkknjmbd?authuser1 这个是我…

无需注册,国内直接使用,你的浏览器AI小助手

ChatGPT Sidebar是什么 ChatGPT Sidebar是一个浏览器插件,可以在浏览器的侧边栏中提供自然语言处理服务。它使用OpenAI的GPT模型,可以回答各种问题,提供文本摘要、翻译等功能。 ChatGPT Sidebar可以成你的私人助理,常驻在浏览器的某个角落,当你需要翻译一段文字时,可以立…

使用火狐浏览器插件 katalon 做自动化浏览操作

今天参加全国公共英语考试&#xff0c;使用了 katalon 这个火狐&#xff08;Firefox&#xff09;浏览器的插件&#xff08;基于 selenium&#xff09;&#xff0c;简化了重复劳动。整理成文档&#xff0c;希望可以帮助到有需要的朋友。 安装 从火狐浏览器的菜单里进入“附加组件…

ubuntu下安装火狐浏览器及快捷图标

一、在线安装 apt install firefox 二、离线安装 1.下载最新的版本包 火狐官网 2.导入安装包—解压 # 我这里安装包放在opt下 cd /opt tar -jxvf Firefox-latest-x86_64.tar.bz2 3.安装完之后&#xff0c;尝试命令行启动 ./opt/firefox/firefox 4.创建快捷图标 cd /usr/share/a…

怎么把火狐浏览器整成自己喜欢的风格

不多说&#xff0c;先上图&#xff1a; 偶然发现了火狐可以通过Firefox Color扩展自己配置顶部标签栏的颜色&#xff0c;那只能掏出最喜欢的夜店粉整它一下了&#xff0c;然后再配合stylus扩展&#xff0c;就可以整出自己喜欢的风格了。 一、修改顶部书签栏颜色 1、在顶部搜索栏…

火狐firefox浏览器不能播放视频,但别的浏览器可以。

网上有好多的内容&#xff0c;都是老旧的方法&#xff0c;都是flash什么设置的。 后来在外网上找到一个视频&#xff0c;关于不能播放的视频的方法&#xff0c;我设置一下&#xff0c;没有问题。方法如下 关闭浏览器&#xff0c;再打开就可以了。

软文推广过程中有哪些实用的推广用语?

软文推广是一个文字的游戏&#xff0c;说白了就是让文字做你的营销员&#xff0c;所以在文字书写的过程中要特别注意&#xff0c;有时候一个词就能让用户感觉到舒服或不舒适&#xff0c;小编作为一个多年的软文写作人员&#xff0c;就从软文营销用语上面来讲解一下&#xff0c;…

招商软文如何写:推广诱人的广告——文芳阁传媒有话说

招商软文如何写&#xff1a;推广诱人的广告——文芳阁传媒有话说 导语&#xff1a;现在&#xff0c;很多的产品做出了好的开头后&#xff0c;会想出下一步推广的路&#xff1a;就是树形招商发展&#xff0c;其实这个时候就已经升级了服务方式&#xff0c;从产品到技术或者说是秘…

U盘产品如何做好软文推广利用软文来打造为产品引流宣传

软文推广是现在宣传手段中的重要一环&#xff0c;它可以有效的帮助企业更好的宣传产品&#xff0c;提高品牌知名度&#xff0c;提升企业形象&#xff0c;增强消费者对产品的认知度&#xff0c;从而达到促进销量的目的。U盘产品软文推广也是同样道理&#xff0c;如何做好U盘产品…

分享八个软文推广小技巧,让你在众多同行中脱颖而出!

软文推广作为现在主流的推广形式&#xff0c;想要做很容易&#xff0c;但是想要做好就要多下点功夫了&#xff0c;其实 现在大多数公司做软文推广也是在囫囵吞枣&#xff0c;雨里雾里的&#xff0c;其实想要做好软文推广就要多去 注意细节&#xff0c;俗话说细节决定成败&…

软文推广丨什么是软文推广?

随着互联网和移动互联网的普及&#xff0c;网络推广已经成为了企业和个人宣传和推广产品和服务的重要手段之一。其中&#xff0c;软文推广也是一种广泛采用的网络推广方式。本文将围绕“什么是软文推广&#xff0c;应该怎么做”这一主题&#xff0c;对软文推广的概念、特点和实…

软文推广页面

广告页面 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>广告软文推广页面</title><link href"css/fonts/advertitsing.css" rel"stylesheet"type"text/css"…

产品推广软文怎么写?500字的写作技巧为你送上,拿走直接用

对于很多企业来说&#xff0c;经费不足的情况下&#xff0c;在网上发布产品推广软文就是一个不错的选择&#xff0c;但是产品推广是一种学问&#xff0c;想要做好产品推广&#xff0c;首先要学会如何写好一篇优质的推广软文&#xff0c;大家可从以下方面进行入手&#xff0c;让…

软文推广的方法有哪些,硬广告最有效的软文推广策略

软文推广的方法有哪些&#xff0c;硬广告最有效的软文推广策略 什么叫软文营销推广&#xff1f;#广告营销 软文推广怎么做&#xff1f; 我的 10 年软文发布经验告诉我&#xff0c; 90% 的品牌是为了收录&#xff0c;为了排名发布文章&#xff0c;不收录发再多也是白搭。 什么…