今天和大家分享搭建 NodeBB 轻量级论坛过程。在网上搜索了一圈,发现关于 NodeBB 论坛的搭建教程都有些过时,有些则使用的是 CentOS 系统,对于我个人来说,习惯了 Ubuntu 和 Debian 。而且官方推荐的也是使用 Ubuntu 系统搭建,那么现在就和大家分享一下如何在 Ubuntu 系统上搭建 NodeBB 轻量级论坛。
为什么选择 NodeBB
开源、轻量级、快速和高度可扩展性!颜值高!
官方演示网站:[链接登录后可见]
我在初次搭建的过程中,觉得过程稍许繁杂,我知道肯定有小伙伴想说为什么不用 Docker 安装,我首选的方法也是用 Docker,但我在 dockerhub 上找了一圈,发现关于 NodeBB 的 docker 镜像版本太旧,更新时间大约是一年前。而 NodeBB 最新版本已经来到 3.8.2。所以才没有采取 docker 来安装 NodeBB 。
搭建的过程中也是踩了一些坑,比如说在安装 node.js 的过程中,按照官方代码部署,发现最终安装的不是最新版本;最让我头疼的是好不容易部署完成,登录账号密码的时候,提示密码错误等等。希望经过我的踩坑经验,能让大家少走些弯路。
NodeBB 配置要求
- 操作系统: Ubuntu 16.04+ 或 Debian 9+
- 内存: 至少 512MB(推荐 1GB 或更高)
- Node.js: v14.x 或更高
- 数据库: MongoDB 或 Redis
- 反向代理: Nginx 或 Apache
搭建步骤
- 环境搭建( Node.js + MongoDB 数据库)
- 安装 NodeBB 主程序
- 配置反向代理
- NodeBB 加入系统开机启动
- 配置 HTTPS
- 升级
- 备份与恢复
一 、环境搭建( Node.js + MongoDB 数据库)
1. 安装 Node.js
NodeBB 由 Node.js 驱动,因此需要安装 Node.js 。为了获得最新的 Node.js LTS 版本,具有更好的性能和最新的功能,建议大家从 NodeSource Ubuntu 二进制发行版存储库获取。可以将下列代码直接复制粘贴到 ssh 控制台
代码登录后可见
控制台输入node -v,npm -v 验证 Node.js 和 npm 的安装是否成功。出现版本信息即为成功。
2. 安装 MongoDB 数据库
MongoDB 是 NodeBB 的默认数据库,本教程以当前最新的 7.0 稳定版本为例。同样可以将下列代码直接复制粘贴到 ssh 控制台。
代码登录后可见
上述命令执行并完成安装后,输入 ==mongod –version== 验证 MongoDB 的安装是否成功,依旧是出现版本信息即为成功。
启动 mongod 服务,将此服务加入开机自动,最后查看 mongod 运行状态
代码登录后可见
出现下图红色框选内容:active(running),说明服务出于运行状态。按 ctrl+c 返回控制台。接下来,我们需要配置 MongoDB 数据库 。
3. 配置 MongoDB 数据库
1.首先输入 mongosh 进入 shell 控制台,然后切换到内置 代码登录后可见 数据库,创建一个 admin 管理用户。
命令如下(依次执行):
代码登录后可见
代码登录后可见
代码登录后可见
这个 admin 用户的范围是管理数据库,一旦启用授权就可以管理MongoDB。
注意:请将第三条命令中的yourpasswd更换为自己设定的密码
- MongoDB 配置文件 /etc/mongod.conf 中进行编辑
执行 nano /etc/mongod.conf 打开该文件,然后在 #security 下添加下面的代码
代码登录后可见
之后,按 ctrl+x 后点击 y 保存,回车后回到主界面。
4.重新启动 MongoDB 并验证之前创建的管理用户是否可以连接,测试无误后输入 quit 退出。
代码登录后可见