在本教程中,我们将向您展示如何在 Ubuntu 16.04 LTS 上安装 Rocket.Chat。 对于那些不知道的人,Rocket.Chat 是最受欢迎的开源聊天软件之一。 Slack 和有偿实时聊天软件的绝佳替代品。 它是免费的、无限制的,并且有很多很酷的功能,例如视频聊天、屏幕共享、移动应用程序等等。
本文假设您至少具备 Linux 的基本知识,知道如何使用 shell,最重要的是,您将网站托管在自己的 VPS 上。 安装非常简单,假设您在 root 帐户下运行,如果不是,您可能需要添加 ‘sudo
‘ 到命令以获取 root 权限。 我将向您展示如何在 Ubuntu 16.04 Xenial Xerus 服务器上逐步安装 Rocket.Chat。
在 Ubuntu 16.04 LTS 上安装 Rocket.Chat
步骤 1. 首先,通过在终端中运行以下 apt-get 命令,确保所有系统包都是最新的。
sudo apt-get update sudo apt-get upgrade
步骤 2. 安装 MongoDB。
Rocket.Chat 需要 MongoDB 进行安装。 在这一步中,我们将从 MongoDB 存储库安装 MongoDB:
apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv EA312927
然后使用以下命令添加 MongoDB 存储库:
echo "deb https://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.2 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.2.list
使用 apt 命令更新存储库并安装 MongoDB:
apt-get update apt-get install mongodb-org
打开 MongoDB 并将其设置为在启动时自动运行:
systemctl enable mongod systemctl start mongod
步骤 3. 配置 MongoDB ReplicaSet。
这是一个可选步骤,但那些想要提高性能的人应该遵循它。 Rocket.Chat Server 使用 MongoDB 副本集:
nano /etc/mongod.conf
在那里,添加此部分:
replication: replSetName: "001-rs"
Save,退出并重新启动 MongoDB:
systemctl restart mongod
接下来,运行它的 shell 并启动副本集:
# mongo > rs.initiate()
跑完之后rs.initiate()
,你应该得到以下结果:
{ "info2" : "no configuration specified. Using a default configuration for the set", "me" : "idroot.us:27017", "ok" : 1 }
如果“ok”的值不是 1,则说明有问题。 请返回并完全按照本教程中所示的步骤进行操作。
第 4 步。安装 Node.js 和 npm。
Rocket.Chat 需要 Node.js 和 npm,它们都可以在 Ubuntu 存储库中找到:
apt-get install nodejs npm
首先,在整个系统上全局安装“n”包:
npm install -g n
消息系统需要 Node.js 4.5+,因此请确保选择 4.5:
n 4.5
检查您是否拥有正确的 node.js 版本:
node --version
步骤 5. 安装 Rocket.Chat。
首先,下载最新版 Rocket.Chat:
cd /var/www curl -L https://rocket.chat/releases/latest/download -o rocket.chat.tgz
并提取它:
tar xzf rocket.chat.tgz
重命名提取的文件夹:
mv bundle Rocket.Chat
运行以下命令以添加一些环境变量:
cd Rocket.Chat/programs/server npm install cd ../.. ROOT_URL=https://your-host-name.com-as-accessed-from-internet:3000/ MONGO_URL=mongodb://localhost:27017/rocketchat PORT=3000 node main.js
步骤 6. 安装 LEMP(Linux、Nginx、MariaDB 和 PHP)服务器。
需要 Ubuntu 16.04 LEMP 服务器。 如果您没有安装 LAMP,您可以在此处按照我们的指南进行操作。
创建一个新的 SSL 目录,其中将存储证书:
mkdir -p /etc/nginx/ssl/
在此目录中,生成一个新的 SSL 证书文件:
cd /etc/nginx/ssl openssl req -new -x509 -days 365 -nodes -out /etc/nginx/ssl/rocketchat.crt -keyout /etc/nginx/ssl/rocketchat.key chmod 400 rocketchat.key
接下来,创建一个虚拟主机配置:
nano /etc/nginx/sites-available/rocketchat
在那里,粘贴以下配置:
# Upstreams upstream backend { server 127.0.0.1:3000; } # Redirect Options server { listen 80; server_name chat.mydomain.com; # enforce https return 301 https://$server_name$request_uri; } # HTTPS Server server { listen 443; server_name chat.mydomain.com; error_log /var/log/nginx/rocketchat.access.log; ssl on; ssl_certificate /etc/nginx/ssl/rocketchat.crt; ssl_certificate_key /etc/nginx/ssl/rocketchat.key; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; # dont use SSLv3 ref: POODLE location / { proxy_pass https://192.168.1.110:3000/; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; proxy_set_header Host $http_host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forward-For $proxy_add_x_forwarded_for; proxy_set_header X-Forward-Proto http; proxy_set_header X-Nginx-Proxy true; proxy_redirect off; } }
Save,退出并激活此配置:
ln -s /etc/nginx/sites-available/rocketchat /etc/nginx/sites-enabled/rocketchat
跑步:
nginx -t
并确保没有错误。 如果一切正常,重启 Nginx:
systemctl restart nginx
更新环境变量并运行 Rocket.Chat:
cd /var/www/Rocket.Chat/ ROOT_URL=https://chat.mydomain.com MONGO_URL=mongodb://localhost:27017/rocketchat?replicaSet=001-rs PORT=3000 node main.js
步骤 7. 访问 Rocket.Chat。
Rocket.Chat 默认在 HTTP 端口 80 上可用。 打开您喜欢的浏览器并导航到 https://chat.mydomain.com 并完成所需的步骤以完成安装。 如果您使用防火墙,请打开端口 80 以启用对控制面板的访问。
恭喜! 你已经成功地用 Docker 安装了 Rocket.Chat。 感谢您使用本教程在您的 Ubuntu 16.04 上安装 Rocket.Chat 开源聊天软件。 如需其他帮助或有用信息,我们建议您查看 Rocket.Chat 官方网站.