介绍
NodeBB 是一款基于 Node.js 开发的现代化开源论坛软件,它将传统论坛的分类层级、本地用户账户和异步消息模式与现代 Web 技术完美融合。支持实时流式讨论、移动端自适应响应、丰富的 RESTful API,是目前 GitHub 上最活跃、功能最完善的社区论坛解决方案之一。
核心亮点
-
实时交互体验 — 基于 WebSocket 技术实现即时通知和实时讨论流,无需刷新页面即可看到新回复
-
现代化前端 — 采用 Bootstrap 5 构建响应式界面,Harmony 主题开箱即用,完美适配手机和桌面端
-
多数据库支持 — 灵活支持 MongoDB、Redis、PostgreSQL 三种数据库,可根据规模自由选择
-
丰富插件生态 — 核心功能精简,额外功能通过第三方插件扩展,社区插件数量庞大且持续更新
-
主题高度可定制 — 主题引擎极其灵活,支持模板扩展和 SCSS/CSS 自定义,不限制设计创意
-
完整 API 支持 — 提供 RESTful 读写 API,方便与其他系统集成或开发移动客户端
适用场景: 技术社区 / 产品用户论坛 / 游戏玩家社区 / 企业内部讨论区 / 开源项目官方论坛
仓库信息
-
GitHub: https://github.com/NodeBB/NodeBB
-
语言: JavaScript (87.5%) + Go Template (10.3%)
-
协议: GPL-3.0
-
最新版本: v4.13.2 (2026年6月发布)
-
在线体验: https://try.nodebb.org/
安装方法
环境要求: Node.js >= 22, MongoDB >= 5 或 Redis >= 7.2
原生安装方式:
# 克隆仓库
git clone https://github.com/NodeBB/NodeBB.git
cd NodeBB
# 运行安装向导
./nodebb setup
# 启动服务
./nodebb start
安装过程中会提示配置数据库、管理员账号和端口(默认 4567)。
Docker Compose 快速部署:
version: '3'
services:
nodebb:
image: ghcr.io/nodebb/nodebb:latest
container_name: nodebb
ports:
- "4567:4567"
environment:
- NODEBB_URL=http://localhost:4567
- NODEBB_SECRET=your-secret-key
- NODEBB_ADMIN_USERNAME=admin
- NODEBB_ADMIN_PASSWORD=admin123
- NODEBB_ADMIN_EMAIL=admin@example.com
- DATABASE=mongo
- DB_HOST=mongo
- DB_PORT=27017
- DB_NAME=nodebb
- DB_USER=nodebb
- DB_PASS=nodebb
volumes:
- ./nodebb_data:/usr/src/app/public/uploads
depends_on:
- mongo
- redis
restart: unless-stopped
mongo:
image: mongo:6
container_name: nodebb-mongo
environment:
- MONGO_INITDB_ROOT_USERNAME=nodebb
- MONGO_INITDB_ROOT_PASSWORD=nodebb
- MONGO_INITDB_DATABASE=nodebb
volumes:
- ./mongo_data:/data/db
restart: unless-stopped
redis:
image: redis:7-alpine
container_name: nodebb-redis
restart: unless-stopped
启动命令:
docker-compose up -d
部署完成后访问 http://localhost:4567,按向导完成初始化配置即可使用。
安全提示:
生产环境部署时,建议将 Redis 的 bind_address 设为 127.0.0.1 并设置 requirepass,同时通过 nginx 反向代理并配置防火墙规则。