概述
知识库、知识管理、Wiki、(Markdown)编辑器等几个概念之间有区别,但区别并不明显:
- 编辑器:尤其是MarkDown几乎算是轻量级文本格式标准,几乎所有编辑器都支持MarkDown。工具层
- 定位:写作工具,解决的是"怎么写"的问题
- 核心功能:提供语法高亮、实时预览、导出PDF/HTML等。它只关心单个文件的内容创作
- 代表:Typora、VS Code(写Markdown时)、Obsidian(本质是编辑器+管理,但核心是编辑)
- 特点:无组织能力。不会分类、检索或关联笔记,这些事得你自己做
- Wiki:常见于多人Wiki,个人Wiki和很少见。呈现与协作层
- 定位:多人协作的在线文档库,解决的是"怎么让大家一起看/写"的问题
- 核心功能:页面之间通过超链接相互引用,支持版本历史、权限管理、多人同时编辑。它的核心是网状互联和团队共享
- 代表:Wikipedia、Confluence、Notion(部分Wiki功能)、Wiki.js
- 特点:强调公开或团队可见性,页面结构相对固定(通常有导航栏、分类目录),适合作为最终成果的展示平台
- 知识管理:如个人知识管理(PKM),企业知识管理。方法论层
- 定位:一套方法论和流程,解决的是"怎么把零散信息变成知识资产"的问题
- 核心功能:包括信息收集(剪藏、摘录)、整理(分类、打标签)、内化(用自己的话重写、关联已有知识)、输出(写作、分享)
- 代表:PARA法、Zettelkasten(卡片盒笔记法)、DIKW金字塔模型
- 特点:不是软件,是思路。可用任何工具实践知识管理,甚至纸质笔记本
- 知识库:资产层
- 定位:经过整理、可被检索和复用的信息集合,解决的是"组织有什么已知答案"的问题
- 核心功能:存储、分类、搜索、版本管理。它强调结构化和长期保存,往往作为企业的"标准答案"库(如FAQ、产品文档)
- 代表:公司内部的Confluence空间、Notion团队区、Helpjuice、Zendesk Guide
- 特点:偏向于"成品",而不是"草稿"。内容通常经过审核,准确性和完整性较高
关系:
#mermaid-svg-dUn9yT8Qu1emsTnK{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#mermaid-svg-dUn9yT8Qu1emsTnK .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#mermaid-svg-dUn9yT8Qu1emsTnK .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#mermaid-svg-dUn9yT8Qu1emsTnK .error-icon{fill:#552222;}#mermaid-svg-dUn9yT8Qu1emsTnK .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-dUn9yT8Qu1emsTnK .edge-thickness-normal{stroke-width:1px;}#mermaid-svg-dUn9yT8Qu1emsTnK .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-dUn9yT8Qu1emsTnK .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-dUn9yT8Qu1emsTnK .edge-thickness-invisible{stroke-width:0;fill:none;}#mermaid-svg-dUn9yT8Qu1emsTnK .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-dUn9yT8Qu1emsTnK .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-dUn9yT8Qu1emsTnK .marker{fill:#333333;stroke:#333333;}#mermaid-svg-dUn9yT8Qu1emsTnK .marker.cross{stroke:#333333;}#mermaid-svg-dUn9yT8Qu1emsTnK svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-dUn9yT8Qu1emsTnK p{margin:0;}#mermaid-svg-dUn9yT8Qu1emsTnK .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-dUn9yT8Qu1emsTnK .cluster-label text{fill:#333;}#mermaid-svg-dUn9yT8Qu1emsTnK .cluster-label span{color:#333;}#mermaid-svg-dUn9yT8Qu1emsTnK .cluster-label span p{background-color:transparent;}#mermaid-svg-dUn9yT8Qu1emsTnK .label text,#mermaid-svg-dUn9yT8Qu1emsTnK span{fill:#333;color:#333;}#mermaid-svg-dUn9yT8Qu1emsTnK .node rect,#mermaid-svg-dUn9yT8Qu1emsTnK .node circle,#mermaid-svg-dUn9yT8Qu1emsTnK .node ellipse,#mermaid-svg-dUn9yT8Qu1emsTnK .node polygon,#mermaid-svg-dUn9yT8Qu1emsTnK .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-dUn9yT8Qu1emsTnK .rough-node .label text,#mermaid-svg-dUn9yT8Qu1emsTnK .node .label text,#mermaid-svg-dUn9yT8Qu1emsTnK .image-shape .label,#mermaid-svg-dUn9yT8Qu1emsTnK .icon-shape .label{text-anchor:middle;}#mermaid-svg-dUn9yT8Qu1emsTnK .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#mermaid-svg-dUn9yT8Qu1emsTnK .rough-node .label,#mermaid-svg-dUn9yT8Qu1emsTnK .node .label,#mermaid-svg-dUn9yT8Qu1emsTnK .image-shape .label,#mermaid-svg-dUn9yT8Qu1emsTnK .icon-shape .label{text-align:center;}#mermaid-svg-dUn9yT8Qu1emsTnK .node.clickable{cursor:pointer;}#mermaid-svg-dUn9yT8Qu1emsTnK .root .anchor path{fill:#333333!important;stroke-width:0;stroke:#333333;}#mermaid-svg-dUn9yT8Qu1emsTnK .arrowheadPath{fill:#333333;}#mermaid-svg-dUn9yT8Qu1emsTnK .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-dUn9yT8Qu1emsTnK .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-dUn9yT8Qu1emsTnK .edgeLabel{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-dUn9yT8Qu1emsTnK .edgeLabel p{background-color:rgba(232,232,232, 0.8);}#mermaid-svg-dUn9yT8Qu1emsTnK .edgeLabel rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-dUn9yT8Qu1emsTnK .labelBkg{background-color:rgba(232, 232, 232, 0.5);}#mermaid-svg-dUn9yT8Qu1emsTnK .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-dUn9yT8Qu1emsTnK .cluster text{fill:#333;}#mermaid-svg-dUn9yT8Qu1emsTnK .cluster span{color:#333;}#mermaid-svg-dUn9yT8Qu1emsTnK div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-dUn9yT8Qu1emsTnK .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#333;}#mermaid-svg-dUn9yT8Qu1emsTnK rect.text{fill:none;stroke-width:0;}#mermaid-svg-dUn9yT8Qu1emsTnK .icon-shape,#mermaid-svg-dUn9yT8Qu1emsTnK .image-shape{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-dUn9yT8Qu1emsTnK .icon-shape p,#mermaid-svg-dUn9yT8Qu1emsTnK .image-shape p{background-color:rgba(232,232,232, 0.8);padding:2px;}#mermaid-svg-dUn9yT8Qu1emsTnK .icon-shape .label rect,#mermaid-svg-dUn9yT8Qu1emsTnK .image-shape .label rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-dUn9yT8Qu1emsTnK .label-icon{display:inline-block;height:1em;overflow:visible;vertical-align:-0.125em;}#mermaid-svg-dUn9yT8Qu1emsTnK .node .label-icon path{fill:currentColor;stroke:revert;stroke-width:revert;}#mermaid-svg-dUn9yT8Qu1emsTnK :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;} 零散信息
网页/聊天/想法
知识管理
收集、标签、关联
Markdown编辑器
撰写草稿、整理思路
Wiki/知识库
结构化发布、团队共享
可被检索和复用的
组织资产
其他相关概念还有很多:知识图谱、
参考:
- MarkDown基础及表格、KaTeX公式、矩阵、流程图、UML图、甘特图语法
- Markdown编辑器/笔记软件汇总:NotebookLM、note-gen、MiaoYan、LetsMarkdown、DocFlow
- 笔记软件汇总:Notion、Obsidian、Typora、Grammarly、Zditor
- 笔记软件汇总:MarkText、Notable、Docmost、Notes、Arya
- AI知识库:Paperless-ngx、WeKnora、PandaWiki、ima
- AI知识库(二):Siyuan、Quivr、KHOJ、DocsGPT、ChatWiki
- PKM应用:Tolaria、Blinko、MarKing、Crumbs
Confluence
之前实战笔记:CentOS 7安装confluence5.4.4踩坑记录
wiki.js
官网,基于Node.js的开源(GitHub,28.7K Star,3.3K Fork)现代Wiki工具,兼具轻量性与强功能性,支持Markdown、WYSIWYG等多模式编辑,适配从个人到企业的各类知识管理需求。官方文档
核心优势包括灵活的权限管控、内容版本追踪、40+语言本地化及响应式设计,可跨设备流畅使用。支持PG、MySQL等多数据库,以及Git、AWS S3等多存储方式,部署灵活(兼容Docker、K8s)。
模块化架构允许按需启用功能,还可通过插件扩展能力,适用于团队协作知识库、产品文档、个人笔记等场景,平衡易用性与扩展性。
Outline
ShowDoc
官网,适合IT团队的开源(GitHub,12.8K Star,2.2K Fork)在线API、技术文档、接口协作工具。基于SmartWiki,PHP开发。在线体验。
采用Markdown编辑器,编辑和阅读体验都很优秀;内置API接口模板和数据字典模板,一键插入,减少重复编辑工作量。
历史版本管理:支持查看文档的历史版本,可一键恢复到任意历史版本,不再担心误删内容或修改后想回退。
多端适配+离线导出:响应式网页设计,电脑和手机都能流畅阅读;支持将整个项目导出为离线Word文档,断网也能看。
开箱即用三大核心场景:
| 场景 | 说明 |
|---|---|
| API文档 | 快速编写精美的接口文档,支持前后端协作,请求参数、返回示例一目了然 |
| 数据字典 | 直观展示数据库表结构及各字段定义,新人接手项目不再抓瞎 |
| 技术文档 | 编写工具说明、技术规范、项目文档,团队随时查阅 |
权限管理
| 权限类型 | 说明 |
|---|---|
| 公开项目 | 任何人可通过链接访问,适合对外发布的接口文档 |
| 私有项目 | 需登录访问,密码由项目Owner设置 |
| 成员管理 | 可添加/删除成员,成员可编辑文档但不可转移或删除项目 |
| 项目转移 | Owner可自由将项目转让给他人 |
实战
提供多种部署安装方式:
bash
# 基于Docker环境
curl -fL https://www.showdoc.cc/script/showdoc | bash
# 安装英文版
curl -fL https://www.showdoc.cc/script/showdoc | bash -s en
# 其他命令
curl -fL https://www.showdoc.cc/script/showdoc | bash -s stop/restart/update/uninstall
# Docker部署
docker run -d \
--name showdoc \
-p 4999:80 \
-v /showdoc_data/html:/var/www/html \
star7th/showdoc
脚本会自动完成:Docker环境检查→镜像拉取→容器启动,全程无需手动干预。
浏览器打开:http://ip:4999,默认用户名密码:showdoc/123456
基于源码:
bash
git clone https://github.com/star7th/showdoc.git
cd showdoc
Nginx参考配置:
nginx
server {
listen 80;
server_name your-domain.com;
root /path/to/showdoc;
index index.php index.html;
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
location / {
try_files $uri $uri/ /index.php?$query_string;
}
}
浏览器打开http://localhost,按页面引导完成安装。
MinDoc
官网,Golang实现、基于beego框架、开源(GitHub,7.8K Star,2K Fork)接口在线文档管理系统,官方文档,在线体验,用户名密码为test/123456。
已实现功能:
- 项目管理:可对项目进行编辑更改,成员添加等
- 文档管理:添加和删除文档,文档历史恢复等
- 用户管理:添加和禁用用户,个人资料更改等
- 用户权限管理:实现用户角色的变更
- 项目加密:可设置项目公开状态,私有项目需要通过Token访问
- 站点配置:二次开发时可添加自定义配置项
- 附件管理:可管理所有项目中上传的文件
- 项目导出:目前支持导出PDF、Word、EPUB、MOBI、Markdown等格式项目
- 标签管理:可关系已存在的项目标签
- 导入项目:支持导入Markdown压缩包成为一个项目
- 二级目录部署:支持将MinDoc部署到二级子目录
前身是SmartWiki文档系统,技术栈非常高度相似:
- beego 1.9.2
- editor.md
- bootstrap 3.2
- jquery 1.8
- layer:弹出层框架
- webuploader:文件上传框架
- Nprogress库
- jstree
- font awesome:字体库
- cropper:图片剪裁库
实战
懒得本地部署,直接打开在线体验:

这个颜值不行啊。
创建文档时可设置为目录

LeafWiki
官网,在线demo,开源(GitHub,946 Star,66 Fork)的自托管Wiki工具,专为工程师和自托管用户设计。采用单个Go二进制文件运行,无需外部数据库,所有数据以Markdown文件形式存储在磁盘上,配合SQLite实现搜索和元数据管理。
特点
- 单二进制部署:整个应用只有一个Go二进制文件,无需安装Node.js、Redis、PG等外部依赖
- Markdown原生存储:页面内容以Markdown文件形式存储在磁盘上,可直接在应用外读取,备份只需
cp -r命令(先停止应用) - 轻量高效:基于Go语言开发,资源占用极低,可在Linux、macOS、Windows甚至树莓派上运行
- 全文搜索:支持标题和内容的全文搜索,并可通过标签进行过滤
- 树状导航:采用显式的层级结构,而非扁平的笔记流,更适合结构化文档
- 灵活的访问控制:支持三种访问模式------完全内部、公开只读、完全开放
- Markdown编辑器:内置实时预览编辑器,支持快捷键、自动补全和Mermaid图表
- 移动端友好:响应式UI设计,在手机和平板上也能良好使用
支持的访问模式:
| 模式 | 说明 | CLI参数 | 环境变量 |
|---|---|---|---|
| 内部Wiki | 所有访问需要登录(默认) | 无 | 无 |
| 公开只读 | 任何人可浏览,编辑需登录 | --public-access=true |
LEAFWIKI_PUBLIC_ACCESS=true |
| 完全开放 | 无需登录,所有人可读写 | --disable-auth |
LEAFWIKI_DISABLE_AUTH=true |
解读:
- 所有访问都需要登录认证,管理员可创建用户和设置权限,支持管理员、编辑者、查看者三种角色
--disable-auth模式会完全移除认证,仅适用于可信的内网环境,切勿暴露到公网。
应用场景
- 个人知识库:适合个人笔记、技术文档、读书笔记等私人知识管理
- 团队文档:适合小型团队的内部文档、运维手册、项目记录
- Homelab文档:适合家庭实验室的配置记录、网络拓扑、设备管理
- 开发者笔记本:适合开发者记录代码片段、API文档、技术方案
- 开源项目文档:适合开源项目的官方文档、使用指南、贡献指南
实战
基于Docker安装:
bash
docker run -d \
--name=leafwiki \
--restart=unless-stopped \
-p 8723:8080 \
-v /volume1/docker/leafwiki/data:/app/data \
-e LEAFWIKI_JWT_SECRET=yourSecret \
-e LEAFWIKI_ADMIN_PASSWORD=yourPassword \
-e LEAFWIKI_ALLOW_INSECURE=true \
ghcr.io/perber/leafwiki:latest
提示:--allow-insecure=true参数在使用HTTP时必须添加,如果通过HTTPS反向代理访问则需要省略该参数,并确保反向代理转发X-Forwarded-Proto: https头。
所有能使用Docker安装的应用,当然也能通过Docker Compose安装。将Docker启动命令扔给GPT,甚至于都不需要提供启动命令,直接让GPT生成docker-compose.yml文件。同理,所有能使用Docker安装的应用,也能生成deployment.yml文件,然后使用kubectl apply -f deployment.yml安装。
yml
version: '3.8'
services:
leafwiki:
image: ghcr.io/perber/leafwiki:latest
container_name: leafwiki
restart: unless-stopped
user: 1000:1000
ports:
- "8723:8080"
environment:
- LEAFWIKI_JWT_SECRET=yourSecret# JWT密钥,用于签名会话
- LEAFWIKI_ADMIN_PASSWORD=yourPassword# 管理员初始密码
- LEAFWIKI_ALLOW_INSECURE=true# HTTP 访问时必须,HTTPS 时省略
volumes:
- ./data:/app/data# 数据存储目录
浏览器打开http://localhost:8723,登录用户名admin,密码是LEAFWIKI_ADMIN_PASSWORD后面的字符串,登录成功后,即可开始体验。
SmartWiki
开源(GitHub,519 Star,200 Fork)Wiki项目,已不维护多年,已于2019年5月8日归档。
官方推荐使用MinDoc

但是!!!!!!挺搞笑的是,这个作者又在维护并开源另一套系统PlainDoc(从上面截图链接里得知)。

事实上,个人理解,SmartWiki和PlainDoc的功能上的差别,就类似于菠萝和凤梨的差别。但语言上有区别:
- SmartWiki:基于JavaScript、CSS、PHP
- PlainDoc:基于Go、TypeScript
一款针对IT团队开发的简单好用的文档管理系统。可用来储存日常接口文档,数据库字典,手册说明等文档。内置项目管理,用户管理,权限管理等功能,能够满足大部分中小团队的文档管理需求。
功能
- 项目管理:可对项目进行编辑更改,成员添加等
- 文档管理:添加和删除文档,文档历史恢复等
- 用户管理:添加和禁用用户,个人资料更改等
- 用户权限管理:实现用户角色的变更
- 项目加密:可设置项目公开状态为私密、半公开、全公开
- 站点配置:二次开发时可添加自定义配置项
技术
- laravel 5.2
- mysql 5.6
- editor.md
- bootstrap 3.2
- jQuery库
- layer:弹出层框架
- webuploader:文件上传框架
- Nprogress库
- jstree
- font awesome:字体库
- cropper:图片剪裁库
PlainDoc
官网,轻量级、开源(GitHub,47 Star,8 Fork)企业知识分享和文档在线管理系统,可用于快速构建企业Wiki和团队知识分享平台。部署方便,使用简单,帮助团队构建一个信息共享、文档管理的协作环境。
功能
- 空间与文档树:支持空间、目录、文档的层级组织
- Markdown编辑:左树+中间编辑+右侧预览的工作台体验
- 阅读系统:独立阅读页(
/r/:spaceId/:docId),适合分享与访问 - 权限模型:
owner / collaborator / reader多角色访问控制 - 版本能力:文档版本号、冲突检测、修订记录
- 图片链路:上传、鉴权、静态回源、Markdown直接渲染
- 后台治理:用户、空间、文档、主题、系统配置、审计管理
亮点
- 轻量但完整:一套系统同时覆盖编辑、阅读、权限与后台治理
- 单体部署体验:Go主服务,Node SSR Worker子进程,无需独立Node SSR服务
- 渲染一致性:阅读SSR与编辑器预览复用同一套Markdown渲染链路
- 双SSR架构:
- 首页/分类页:Go模板SSR
- 阅读页:React SSR,由Go调度Worker
- 开发和生产都顺手:前端统一走后端HTTP API模式,联调与生产一致
- 工程化可维护:统一响应协议、错误码体系、Docker Compose开箱部署