使用宝塔面板安装Rocket.Chat多功能团队聊天室
安裝
官方文檔:https://rocket.chat/docs/
環境要求:NodeJS 8.11.4、Mongodb 4.0.9、Nginx(非必需)。
提示:由于官方建議的最低內存1G,所以512M或更小的建議加點虛擬內存,可以使用Swap一鍵腳本→傳送門。
1、安裝寶塔
#CentOS系統 wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh #Ubuntu系統 wget -O install.sh http://download.bt.cn/install/install-ubuntu_6.0.sh && sudo bash install.sh #Debian系統 wget -O install.sh http://download.bt.cn/install/install-ubuntu_6.0.sh && bash install.sh安裝完成后,進入面板,點擊左側軟件商店,然后安裝PM2管理器、MongoDB、Nginx(使用域名訪問才需要安裝,反之不用)。
注意:Debian安裝MongoDb之前還需要使用命令apt install sudo,不然可能存在MongoDb啟動不了的情況;如果你已經安裝了MongoDb,那就先使用apt install sudo,再使用/etc/init.d/mongodb start啟動即可。
2、環境配置
先點擊左側軟件商店,找到PM2管理器設置選項,選擇Node版本,切換到8.11.4版本,不然太高可能會導致Rocket.Chat運行出錯。
然后再找到MongoDb設置選項,點擊配置文件,新增/修改以下代碼:
#設置storage引擎,新增engine參數,并修改下dbPath路徑,不然會啟動不了 storage:dbPath: /www/server/mongodb/Rocket.ChatdirectoryPerDB: trueengine: mmapv1journal:enabled: true #配置replica set,新增以下參數 replication:replSetName: rs01保存后,MongoDb會自動關閉,這時候使用命令:
#新建數據存儲路徑,即上面配置文件修改的dbPath參數 mkdir /www/server/mongodb/Rocket.Chat #授權 chown mongo:mongo /www/server/mongodb/Rocket.Chat #重新啟動數據庫 /etc/init.d/mongodb start #啟動replica set mongo --eval "printjson(rs.initiate())"3、安裝依賴
#Debian/Ubuntu系統 apt install -y graphicsmagick #CentOS系統 yum install -y GraphicsMagick4、安裝Rocket.Chat
#下載rocket.chat wget -O rocket.chat.tgz https://releases.rocket.chat/latest/download #解壓并刪除 tar -xzf rocket.chat.tgz && rm -rf rocket.chat.tgz #移動到/opt并重命名 mv bundle /opt/Rocket.Chat #安裝依賴 cd /opt/Rocket.Chat npm install -g inherits cd programs/server npm install5、啟動Rocket.Chat
#新建rocketchat用戶并授權 useradd -M rocketchat && usermod -L rocketchat chown -R rocketchat:rocketchat /opt/Rocket.Chat #新建systemd配置文件,將以下代碼一起復制到SSH運行 cat > /etc/systemd/system/rocketchat.service <<EOF [Unit] Description=Rocket.Chat After=network.target Wants=network.target[Service] 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[Install] WantedBy=multi-user.target EOF開始啟動:
#啟動的時候,可能需要點時間加載,等待即可 systemctl start rocketchat查看狀態:
systemctl status rocketchat開機自啟:
systemctl enable rocketchat此時訪問地址為ip:3000,如果你想用ip訪問,點擊左側安全,開放3000端口即可,如果想用域名訪問,不需要開啟,繼續往下面看。
6、域名訪問
要使用域名的話就需要進行反代了,這里就不用寶塔自帶的反向代理配置了,默認配置不適合Rocket.Chat。
先點擊左側網站,添加站點,然后再點擊添加好了的域名名稱,這時候就進入了站點配置,點擊配置文件,在中間添加以下代碼:
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,申請免費的Let's Encrypt證書,并強制HTTPS。
?
CentOS中的Rocket.Chat
本安裝指南已在以下環境中進行了測試:
- 火箭聊天1.0.2
- 作業系統:CentOS 7.6
- Mongodb 4.0.9
- NodeJS 8.11.4
安裝必要的依賴包
更新軟件包列表并配置yum以使用以下yum存儲庫文件安裝正式的MongoDB軟件包:
<span style="color:#1f2329"><code><span style="color:#24909d">sudo </span>yum <span style="color:#6ab825"><strong>-y</strong></span> check-update </code></span> <span style="color:#1f2329"><code><span style="color:#24909d">cat</span> <span style="color:#d0d0d0"><<</span> <span style="color:#40ffff">EOF</span><span style="color:#ed9d13"> | sudo tee -a /etc/yum.repos.d/mongodb-org-4.0.repo [mongodb-org-4.0] name=MongoDB Repository baseurl=https://repo.mongodb.org/yum/redhat/7/mongodb-org/4.0/x86_64/ gpgcheck=1 enabled=1 gpgkey=https://www.mongodb.org/static/pgp/server-4.0.asc </span><span style="color:#40ffff">EOF </span></code></span>配置要通過軟件包管理器安裝的Node.js:
<span style="color:#1f2329"><code><span style="color:#24909d">sudo </span>yum install <span style="color:#6ab825"><strong>-y</strong></span> curl <span style="color:#d0d0d0">&&</span> curl <span style="color:#6ab825"><strong>-sL</strong></span> https://rpm.nodesource.com/setup_8.x | <span style="color:#24909d">sudo </span>bash - </code></span>安裝構建工具,MongoDB,nodejs和graphicsmagick:
<span style="color:#1f2329"><code><span style="color:#24909d">sudo </span>yum install <span style="color:#6ab825"><strong>-y</strong></span> gcc-c++ make mongodb-org nodejs </code></span> <span style="color:#1f2329"><code><span style="color:#24909d">sudo </span>yum install <span style="color:#6ab825"><strong>-y</strong></span> epel-release <span style="color:#d0d0d0">&&</span> <span style="color:#24909d">sudo </span>yum install <span style="color:#6ab825"><strong>-y</strong></span> GraphicsMagick </code></span>使用npm install繼承了和n,以及Rocket.Chat所需的節點版本:
<span style="color:#1f2329"><code><span style="color:#24909d">sudo </span>npm install <span style="color:#6ab825"><strong>-g</strong></span> inherits n <span style="color:#d0d0d0">&&</span> <span style="color:#24909d">sudo </span>n 8.11.4 </code></span>安裝Rocket.Chat
下載最新的Rocket.Chat版本:
<span style="color:#1f2329"><code>curl <span style="color:#6ab825"><strong>-L</strong></span> https://releases.rocket.chat/latest/download <span style="color:#6ab825"><strong>-o</strong></span> /tmp/rocket.chat.tgz </code></span> <span style="color:#1f2329"><code><span style="color:#24909d">tar</span> <span style="color:#6ab825"><strong>-xzf</strong></span> /tmp/rocket.chat.tgz <span style="color:#6ab825"><strong>-C</strong></span> /tmp </code></span>安裝(本指南使用/ opt,但可以選擇其他目錄):
<span style="color:#1f2329"><code><span style="color:#24909d">cd</span> /tmp/bundle/programs/server <span style="color:#d0d0d0">&&</span> npm install </code></span> <span style="color:#1f2329"><code><span style="color:#24909d">sudo </span>mv /tmp/bundle /opt/Rocket.Chat </code></span>配置Rocket.Chat服務
添加rocketchat用戶,在Rocket.Chat文件夾上設置正確的權限,并創建Rocket.Chat服務文件:
<span style="color:#1f2329"><code><span style="color:#24909d">sudo </span>useradd <span style="color:#6ab825"><strong>-M</strong></span> rocketchat <span style="color:#d0d0d0">&&</span> <span style="color:#24909d">sudo </span>usermod <span style="color:#6ab825"><strong>-L</strong></span> rocketchat </code></span> <span style="color:#1f2329"><code><span style="color:#24909d">sudo </span>chown <span style="color:#6ab825"><strong>-R</strong></span> rocketchat:rocketchat /opt/Rocket.Chat </code></span> <span style="color:#1f2329"><code><span style="color:#24909d">cat</span> <span style="color:#d0d0d0"><<</span> <span style="color:#40ffff">EOF</span><span style="color:#ed9d13"> |sudo tee -a /lib/systemd/system/rocketchat.service [Unit] Description=The Rocket.Chat server After=network.target remote-fs.target nss-lookup.target nginx.target mongod.target [Service] ExecStart=/usr/local/bin/node /opt/Rocket.Chat/main.js StandardOutput=syslog StandardError=syslog SyslogIdentifier=rocketchat User=rocketchat Environment=MONGO_URL=mongodb://localhost:27017/rocketchat?replicaSet=rs01 MONGO_OPLOG_URL=mongodb://localhost:27017/local?replicaSet=rs01 ROOT_URL=http://localhost:3000/ PORT=3000 [Install] WantedBy=multi-user.target </span><span style="color:#40ffff">EOF </span></code></span>/usr/lib/systemd/system/rocketchat.service使用sudo和您喜歡的文本編輯器打開剛剛創建的Rocket.Chat服務文件(),然后更改ROOT_URL環境變量以反映您要用于訪問服務器的URL(可以選擇更改MONGO_URL,MONGO_OPLOG_URL和PORT):
<span style="color:#1f2329"><code><span style="color:#40ffff">MONGO_URL</span><span style="color:#d0d0d0">=</span>mongodb://localhost:27017/rocketchat?replicaSet<span style="color:#d0d0d0">=</span>rs01 <span style="color:#40ffff">MONGO_OPLOG_URL</span><span style="color:#d0d0d0">=</span>mongodb://localhost:27017/local?replicaSet<span style="color:#d0d0d0">=</span>rs01 <span style="color:#40ffff">ROOT_URL</span><span style="color:#d0d0d0">=</span>http://your-host-name.com-as-accessed-from-internet:3000 <span style="color:#40ffff">PORT</span><span style="color:#d0d0d0">=</span>3000 </code></span>為MongoDB設置存儲引擎和復制(對于版本> 1為必需),并啟用并啟動MongoDB和Rocket.Chat:
<span style="color:#1f2329"><code><span style="color:#24909d">sudo </span>sed <span style="color:#6ab825"><strong>-i</strong></span> <span style="color:#ed9d13">"s/^# engine:/ engine: mmapv1/"</span> /etc/mongod.conf </code></span> <span style="color:#1f2329"><code><span style="color:#24909d">sudo </span>sed <span style="color:#6ab825"><strong>-i</strong></span> <span style="color:#ed9d13">"s/^#replication:/replication:</span><span style="color:#ed9d13">\n</span><span style="color:#ed9d13"> replSetName: rs01/"</span> /etc/mongod.conf </code></span> <span style="color:#1f2329"><code><span style="color:#24909d">sudo </span>systemctl <span style="color:#24909d">enable </span>mongod <span style="color:#d0d0d0">&&</span> <span style="color:#24909d">sudo </span>systemctl start mongod </code></span> <span style="color:#1f2329"><code>mongo <span style="color:#6ab825"><strong>--eval</strong></span> <span style="color:#ed9d13">"printjson(rs.initiate())"</span> </code></span> <span style="color:#1f2329"><code><span style="color:#24909d">sudo </span>systemctl <span style="color:#24909d">enable </span>rocketchat <span style="color:#d0d0d0">&&</span> <span style="color:#24909d">sudo </span>systemctl start rocketchat </code></span>可選配置
配置防火墻規則?配置HTTP反向代理以訪問Rocket.Chat服務器?[配置mongo訪問控制] [配置mongodb的生產值]
配置您的Rocket.Chat服務器
打開Web瀏覽器并訪問已配置的ROOT_URL(http://your-host-name.com-as-accessed-from-internet:3000),按照配置步驟設置管理員帳戶以及您的組織和服務器信息。
ZLIB版本問題
一些用戶遇到了在CentOS中啟動火箭聊天服務器的問題,因為他們的zlib版本與rocket.chat不兼容。
如果您在日志中找到類似于以下內容的錯誤消息:
<span style="color:#1f2329"><code>Exception <span style="color:#6ab825"><strong>in </strong></span>callback of async <span style="color:#6ab825"><strong>function</strong></span>: Error: /lib64/libz.so.1: version <span style="color:#ed9d13">`</span>ZLIB_1.2.9<span style="color:#ed9d13">' not found </span></code></span>在Rocket.Chat服務文件(/usr/lib/systemd/system/rocketchat.service)中添加以下環境變量:
環境= LD_PRELOAD = / opt / Rocket.Chat / programs / server / npm / node_modules / sharp / vendor / lib / libz.so
總結
以上是生活随笔為你收集整理的使用宝塔面板安装Rocket.Chat多功能团队聊天室的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux centos7清除系统日志、
- 下一篇: 解决layui前端动态设置radio、c