BookStack

开源文档管理系统,自托管 Wiki 平台

⭐ 18.9k PHP

解决什么问题

企业或团队中知识文档分散在邮件、共享文件夹、即时通讯工具等,导致信息难以检索、版本混乱、缺乏权限控制。BookStack 提供一个结构化的自托管平台,统一存储和分类文档,支持权限管理,使团队成员能够高效查询和协作维护知识库。

最适合

  1. 中小企业内部知识库(员工数 10-500 人)。
  2. 技术团队的 API 文档、开发指南、运维手册。
  3. 需要完全掌控数据隐私的场景(如金融机构、教育机构)。
  4. 希望避免 SaaS 订阅费用的长期文档管理需求。

不适合

  1. 需要富文本编辑器(而非 Markdown)的专业出版场景,如书籍排版。
  2. 需要复杂权限层级(如页面级 ACL 超过 100 个规则)的大规模组织(预计 2000+ 用户)。
  3. 需要实时协同编辑(如 Google Docs 风格)的团队。
  4. 对服务器资源敏感(内存低于 256MB)的极低配置环境。

快速上手

bash
1. 下载并解压最新版
wget https://github.com/BookStackApp/BookStack/releases/latest/download/bookstack.tar.gz
tar -xzf bookstack.tar.gz
2. 安装 PHP 依赖
cd BookStack
composer install —no-dev —no-interaction
3. 初始化数据库并启动开发服务器
cp .env.example .env
php artisan key:generate
php artisan migrate —seed
php artisan serve

项目详情

BookStack 是一个轻量级的文档管理平台,使用 PHP 8.0+ 和 Laravel 框架构建。它专注于提供结构化的内容组织方式:用户通过“书架”(Shelf)→“书籍”(Book)→“章节”(Chapter)→“页面”(Page)的层次结构,清晰管理文档。核心特性包括:

  • Markdown 编辑器:支持实时预览,并提供 WYSIWYG 选项(基于 TinyMCE)。
  • 细粒度权限:可设置角色、用户组权限,控制阅读和编辑范围。
  • 搜索功能:内置全文搜索,支持标签过滤和高级查询语法。
  • 附件管理:上传文件并与页面关联,支持图片拖拽。
  • 集成能力:支持 LDAP、SAML、OAuth 认证,以及 Webhook 通知。
  • 多语言界面:包含中文、日文、德文等 20+ 语言版本。
  • 响应式设计:桌面和移动设备均可使用。

BookStack 遵循 MIT 许可证,完全开源,允许商用和修改。项目维护者定期发布版本(当前最新稳定版 v24.12),每个版本附带详细的更新日志。数据库支持 MySQL 和 SQLite,部署推荐使用 Nginx + PHP 8.1+。