快速搭建论坛,用 NodeBB 搭建自己的社区,汇聚可爱的人们
发布于 9 个月前 作者 gladmo 1137 次浏览 来自 分享

原文地址:https://www.jianshu.com/p/ab72fe404c8d

前言

前些天刚建了自己的博客:《极简博客搭建,搭建超级简单又好看》 还上了 HTTPS :《轻松全站 HTTPS,还没用上 https (可申请泛域名证书)的朋友可以操练起来了》

原由

这些天,陆陆续续有朋友问我,这个博客能不能登录啊,有没有用户体系啊。我想也许是我小说写得好看,他们想找地方评论。准备接一个评论组件在里面,方便大家讨论我的文字以及分享自己的看法。 一杯茶的功夫,我就改变了主意,准备自己搭建一个属于自己的社区。在里面汇聚一些自己喜欢的人们。这么大的变故是为什么?因为我想无论怎么接入评论组件,人仍然不在你这。第三方如果恶意收集用户的信息,并技术太弱保护不了这份数据的话,那是在害了我们的用户。且有些组件没事还没弹个广告什么的,着实有点坑。那话不多说,自己建一个吧~

效果预览

前台效果 前台效果

后台效果 后台管理界面

要搭论坛,还没有服务器? 来参加阿里云双 11 底价团,12 号前 99.5/台起!

优惠的一小部分 查看更多

架构一览

有很多现成的社区解决方案,开源不开源的都有像 wecent、nodebb 什么的。 我挑选了一个可定制化更高,我认为更好看的给大家演示一下。

  1. Docker
  2. MongoDB/pregresSQL/redis(三个选其一)
  3. NodeBB

开始

1. 安装 Docker (已安装的忽略)

CentOS Windows Mac

2. 安装 MongoDB/pregresSQL/redis三个选其一

NODE 的项目就只介绍 MongoDB 的安装吧,如需用 pregresSQL/redis 当作你的数据库,请自己安装,后面只是配置不同 先创建所需的 docker 网络 docker network create mongo-net 创建了一个名字为mongo-net的默认网络 安装 mongodb docker run --name mongo --restart always --network mongo-net -d mongo --wiredTigerCacheSizeGB 0.25 参数解释(不关心的不用看) docker run 表示运行一个容器,可以想像成运行一个程序 –name mongo 给你的程序起个名字,mongo 可以换其它名字 –restart always 表示程序如果死掉就自动重新启动,保证一直提供服务 -d :后台运行你的这个程序 mongo 镜像名 –wiredTigerCacheSizeGB 0.25 设置最大的内存使用为 0.25G

执行成功后你就完成了数据存储的部分,下面开始安装 NodeBB

  1. 安装 NodeBB docker run --restart always --name forum --network mongo-net -p 4567:4567 -d nodebb/docker 参数解释(不关心的不用看) docker run 表示运行一个容器,可以想像成运行一个程序 –restart always 表示程序如果死掉就自动重新启动,保证一直提供服务 –name forum 给你的程序起个名字,forum 可以换其它名字 –network mongo-net 给这个容器指定一个虚拟网络,不存在则报错,存在则加入这个网络 -d :后台运行你的这个程序 nodebb/docker 镜像名

执行成功后,你的论坛就已经安装完成了。服务已经启动,你只需要简单配置就能正式上线啦~

执行成功后,你的论坛就已经安装完成了。服务已经启动,你只需要简单配置就能正式上线啦~

  1. 配置 NodeBB 在你的浏览器中输入http://localhost:4567 进入配置页面 配置 NodeBB 等一段时间后你会看到这个页面 安装完成,准备进入你的论坛 到这里就全部配置完成了,你可以登录后台设置你的论坛 用户登录界面 可以修改默认语言为中文 设置语言 设置成中文,保存后刷新 后台界面 后台管理界面

5.后台配置 到这里,你已经搭建完成了你的论坛。接下来的工作就是把你论坛配置成你想要的样子,你可以在后台安装一些你需要的插件、主题等,打造一个你自己的论坛。

结语

这个例子的所有操作都是按最简单的方式来写的,且不影响正式的使用。当然一些配置方面的优化,则要看你服务器的具体配置,具体来优化了。后台中有许多有用的插件,比如搜索都可以安装起来,来充实你的论坛。 论坛不错,可还没服务器? 来参加阿里云双 11 底价团,12 号前 99.5/台起!

2 回复

我印象中这个的开源协议是 GPL 的,商用要小心

https://github.com/NodeBB/NodeBB#license

NodeBB is licensed under the GNU General Public License v3 (GPL-3) (http://www.gnu.org/copyleft/gpl.html).

Interested in a sublicense agreement for use of NodeBB in a non-free/restrictive environment? Contact us at [email protected].

回到顶部