如何在CentOS 7上部署Rocket.Chat

先决条件

根据官方的Rocket.Chat系统要求,CentOS 7服务器至少需要1G的RAM。

你有Nginx的安装,如果不检查本指南。

您的域名已安装SSL证书。 按照本指南,您可以安装免费的Let’s Encrypt SSL证书。

安装依赖关系

安装下面的软件包,以便在本指南的后面我们可以构建所需的npmpackages

yum install epel-release curl GraphicsMagick gcc-c++

我们还需要安装Node.js和npm:

yum install -y nodejs npm

在撰写本文时,Rocket.Chat推荐的Node.js版本是Node.js v8.9.3。 发出以下命令以安装推荐的Node.js版本:

npm install -g inherits n
n 8.9.3

MongoDB是NoSQL面向文档的数据库,它被Rocket.Chat用作数据存储。

我们将使用官方MongoDB存储库中的yum来安装MongoDB。 打开您选择的编辑器并创建以下存储库文件:

/etc/yum.repos.d/mongodb-org.repo

[mongodb-org-3.6]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/RedHat/$releasever/mongodb-org/3.6/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-3.6.asc

要安装MongoDB,请运行以下命令:

sudo yum install mongodb-org

安装完成后,启用并启动MongoDB服务:

sudo systemctl start mongod
sudo systemctl enable mongod

创建新的系统用户

创建一个新的用户和组,这将运行我们的rocket安装,为简单起见,我们将命名我们的用户rocket:

sudo useradd -m -U -r -d /opt/rocket rocket

将nginx用户添加到新用户组,并更改/ opt / rocket目录权限,以便Nginx可以访问我们的rocket安装:

sudo usermod -a -G rocket nginx
sudo chmod 750 /opt/rocket

安装Rocket.Chat

切换到rocket用户:

sudo su – rocket

并用curl下载最新的Rocket.Chat稳定版本:

curl -L https://releases.rocket.chat/latest/download -o rocket.chat.tgz

下载完成后,解压缩压缩文件并将目录重命名为Rocket.Chat:

tar zxf rocket.chat.tgz
mv bundle Rocket.Chat

为了在创建systemd单元并使用Nginx设置反向代理之前测试我们的安装,我们将设置所需的环境变量并启动Rocket.Chat服务器

改回到Rocket.Chat目录并通过发出以下命令启动Rocket.Chat服务器:

cd ../../
node main.js

如果没有错误,您应该看到以下输出:

我们现在可以用CTRL + C停止Rocket.Chat服务器,并继续执行下一步。

创建一个Systemd单元

要将Rocket.Chat作为服务运行,我们将在/etc/systemd/system/目录下创建一个rocketchat.service单元文件,其中包含以下内容:

/etc/systemd/system/rocketchat.service

[Unit]
Description=Rocket.Chat server
After=network.target nss-lookup.target mongod.target

[Install]
WantedBy=multi-user.target

通知systemd我们创建了一个新的单元文件并通过执行以下命令启动Rocket.Chat服务:

sudo systemctl daemon-reload
sudo systemctl start rocketchat

您可以使用以下命令检查服务状态:

sudo systemctl status rocketchat

示例输出:

● rocketchat.service – Rocket.Chat server
  Loaded: loaded (/etc/systemd/system/rocketchat.service; enabled; vendor preset: disabled)
  Active: active (running) since Tue 2018-04-10 20:30:56 UTC; 8s ago
 Main PID: 32356 (node)
  CGroup: /system.slice/rocketchat.service
          └─32356 /usr/local/bin/node /opt/rocket/Rocket.Chat/main.js

如果没有错误,您可以启用Rocket.Chat服务在启动时自动启动:

sudo systemctl enable rocketchat

使用Nginx设置反向代理

如果您遵循了我们如何在CentOS 7上安装Nginx,以及如何在CentOS 7指南上使用Let’s Encrypt来保护Nginx,则您应该已经安装并配置了带有SSL证书的Nginx。 现在我们只需要为我们的Rocket.Chat安装创建一个新的服务器块。

upstream rocketchat_backend {
  server 127.0.0.1:3000;
}

    location / {
        proxy_pass http://rocketchat_backend/;
        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;
    }
}

重新加载Nginx服务以使更改生效:

sudo systemctl reload nginx

配置和使用Rocket.Chat

点击注册一个新帐户,并输入您的第一个管理登录信息。点击提交,然后为您的用户输入用户名,点击使用此用户名,您将被重定向到主页,以管理员身份登录。

就这样! 您已经在CentOS 7上成功安装了Rocket.Chat。如果您在安装时遇到任何问题,请随时留下评论。

文章来源网络,作者:运维,如若转载,请注明出处:https://shuyeidc.com/wp/217304.html<

(0)
运维的头像运维
上一篇2025-04-13 03:11
下一篇 2025-04-13 03:12

相关推荐

  • 个人主题怎么制作?

    制作个人主题是一个将个人风格、兴趣或专业领域转化为视觉化或结构化内容的过程,无论是用于个人博客、作品集、社交媒体账号还是品牌形象,核心都是围绕“个人特色”展开,以下从定位、内容规划、视觉设计、技术实现四个维度,详细拆解制作个人主题的完整流程,明确主题定位:找到个人特色的核心主题定位是所有工作的起点,需要先回答……

    2025-11-20
    0
  • 社群营销管理关键是什么?

    社群营销的核心在于通过建立有温度、有价值、有归属感的社群,实现用户留存、转化和品牌传播,其管理需贯穿“目标定位-内容运营-用户互动-数据驱动-风险控制”全流程,以下从五个维度展开详细说明:明确社群定位与目标社群管理的首要任务是精准定位,需明确社群的核心价值(如行业交流、产品使用指导、兴趣分享等)、目标用户画像……

    2025-11-20
    0
  • 香港公司网站备案需要什么材料?

    香港公司进行网站备案是一个涉及多部门协调、流程相对严谨的过程,尤其需兼顾中国内地与香港两地的监管要求,由于香港公司注册地与中国内地不同,其网站若主要服务内地用户或使用内地服务器,需根据服务器位置、网站内容性质等,选择对应的备案路径(如工信部ICP备案或公安备案),以下从备案主体资格、流程步骤、材料准备、注意事项……

    2025-11-20
    0
  • 如何企业上云推广

    企业上云已成为数字化转型的核心战略,但推广过程中需结合行业特性、企业痛点与市场需求,构建系统性、多维度的推广体系,以下从市场定位、策略设计、执行落地及效果优化四个维度,详细拆解企业上云推广的实践路径,精准定位:明确目标企业与核心价值企业上云并非“一刀切”的方案,需先锁定目标客户群体,提炼差异化价值主张,客户分层……

    2025-11-20
    0
  • PS设计搜索框的实用技巧有哪些?

    在PS中设计一个美观且功能性的搜索框需要结合创意构思、视觉设计和用户体验考量,以下从设计思路、制作步骤、细节优化及交互预览等方面详细说明,帮助打造符合需求的搜索框,设计前的规划明确使用场景:根据网站或APP的整体风格确定搜索框的调性,例如极简风适合细线条和纯色,科技感适合渐变和发光效果,电商类则可能需要突出搜索……

    2025-11-20
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注