Rocketchat 安装教程

1,104 阅读3分钟

OS环境

下面的版本均在ubuntu 20.4.06 LTS中安装。

版本介绍

下文使用的是Rocketchat 4.0.0版本。通过阅读源码,目前为止6.0.0相较于4.0.0,在聊天功能(长连接)层面,并没有进行性能的优化。所以这里计划安装4.0.0版本。

开发版本安装(安装开发版本可自行修改Rocketchat源码以适应公司需求)

注意:

  1. 下面的步骤均需能够顺利访问github、meteor website等第三方库的下载环境。

  2. 不要使用root运行下列命令,建议自建用户并赋予管理员身份

  1. 准备ubuntu中需要的环境

sudo apt-get update

sudo apt-get install -y build-essential

  1. 下载meteor2.2

curl https://install.meteor.com?release=2.2 | sh

  1. 使用git下载Rocketchat并切换到4.0.0版本

git clone https://github.com/RocketChat/Rocket.Chat.git

cd Rocket.Chat

git checkout 2ffdd13

  1. 使用meteor npm下载第三方依赖

注意:这里非常扯,meteor npm i下载过程中,如果网络环境配置不当,即使下载成功运行过程也会报错。报错信息为:error: No version of "包名" satisfies all constraints: 版本号

meteor npm i

  1. 运行开发版本

在terminal中输入meteor,即可运行Rocketchat。

  1. 远程访问

防火墙放行ubuntu的3000端口,在浏览器中输入 http://your_ip:3000 即可访问Rocketchat界面。

生产版本安装

  1. 准备ubuntu中需要的环境

sudo apt-get update

sudo apt-get install -y build-essential

  1. 下载nodejs 12.22.1,本文使用n模块安装nodejs指定版本

sudo apt install nodejs

sudo apt install npm

sudo npm i -g n

sudo n 12.22.1

此时输入node -v,应打印出12.22.1,输入npm -v,应打印出6.14.2。

  1. 下载MongoDb 4.4.24

参考官方文档安装MongoDb

  1. 配置mongodb

sudo sed -i "s/^# engine:/ engine: wiredTiger/" /etc/mongod.conf

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

sudo systemctl enable mongod && sudo systemctl start mongod

mongo --eval "printjson(rs.initiate())"

  1. 下载Rocketchat生产版本安装包

wget -O rocket.chat-4.0.0.tar https://releases.rocket.chat/4.0.0/download

  1. 解压rocket.chat-4.0.0.tar

tar -xvf rocket.chat-4.0.0.tar

  1. 下载第三方依赖

cd rocket.chat-4.0.0/bundle/programs/server && npm install

  1. 编辑service文件,配置启动过程
cat << EOF |sudo tee -a /lib/systemd/system/seconp.service
[Unit]
Description=The Seconp server
After=syslog.target

[Service]
ExecStart=/usr/local/bin/node your_custom_location/bundle/main.js
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=seconpChat
User=your_custom_user
Environment=MONGO_URL=mongodb://localhost:27017/rocketchat?replicaSet=rs01
Environment=MONGO_OPLOG_URL=mongodb://localhost:27017/local?replicaSet=rs01
Environment=ROOT_URL=http://localhost:3000/
Environment=PORT=3000
[Install]
WantedBy=multi-user.target
EOF
  1. 启动RocketChat

sudo systemctl start seconp

  1. 远程访问

防火墙放行ubuntu的3000端口,在浏览器中输入 http://your_ip:3000 即可访问Rocketchat界面。

docker 安装生产版本

  1. 准备ubuntu中需要的环境

sudo apt-get update

sudo apt-get install -y build-essential

  1. 下载docker

参考官方安装文档

  1. 使用docker拉取镜像

docker pull seconp/test_im:v1

  1. 运行test_im:v1并进入容器

dcoker run -itd -p 3000:3000 image_id

docker exec -it container_id /bin/bash

  1. 在容器中使用一个终端打开mongoDB

mongod --config /etc/mongod.conf

  1. 在容器中使用另一个终端运行RocketChat

export MONGO_URL=mongodb://localhost:27017/rocketchat?replicaSet=rs01

export MONGO_OPLOG_URL=mongodb://localhost:27017/local?replicaSet=rs01

export ROOT_URL=http://localhost:3000/

export PORT=3000

cd /root/bundle

node main.js

  1. 远程访问

防火墙放行ubuntu的3000端口,在浏览器中输入 http://your_ip:3000 即可访问Rocketchat界面。


ps:需要帮助的小伙伴可以进群交流。群主可以有偿帮助修改源码。群号:752904848。