NoteDiscovery — 你的自建知识库
NoteDiscovery 是一个轻量级的自托管笔记应用,让你完全掌控自己的知识库。用漂亮、现代化的界面写作、整理和探索笔记——全部运行在你自己的服务器上。
适合谁用
- 注重隐私的用户,希望对数据拥有完全控制权
- 偏好 Markdown 和本地文件存储的开发者
- 构建个人 Wiki 或第二大脑的知识工作者
- 寻找商业应用自建替代方案的团队
- 重视简洁、速度和掌控权的任何人
对比一览
| 方面 | NoteDiscovery | 商业应用 |
|---|---|---|
| 费用 | 100% 免费 | \$xxx/月/年 |
| 隐私 | 你的服务器,你的数据 | 他们的服务器,他们的条款 |
| 速度 | 闪电般快 | 取决于网络 |
| 离线 | 始终可用 | 受限或需同步 |
| 可定制 | 完全控制 | 选项有限 |
| 无锁定 | 纯 Markdown 文件 | 专有格式 |
功能亮点
- 🔒 完全隐私 — 笔记永远不会离开你的服务器
- 🔐 可选认证 — 自建部署时可设置简单的密码保护
- 💰 零成本 — 无订阅,无隐藏费用
- 🚀 快速轻量 — 即时搜索和导航
- 🎨 精美主题 — 多款主题,易于自定义
- 🔌 可扩展 — 插件系统支持自定义功能
- 📱 响应式 — 桌面端、平板和手机均可使用
- 📂 简单存储 — 纯 Markdown 文件,按文件夹管理
- 🧮 数学支持 — LaTeX/MathJax 渲染公式
- 📄 HTML 导出和打印 — 将笔记导出为独立 HTML 或打印
- 🕸️ 图谱视图 — 笔记之间关联的可视化交互图
- ✏️ 绘图编辑器 — 在应用内绘制草图,保存为
drawing-*.png放在笔记旁 - ⭐ 收藏 — 给常用笔记加星标,快速访问
- 📑 大纲面板 — 通过可点击跳转的目录导航标题
- 🤖 AI 助手就绪 — 集成 MCP 协议,支持 Claude、Cursor 等
🤖 AI 集成(MCP)
NoteDiscovery 内置了模型上下文协议(MCP)服务器,让 AI 助手直接与你的笔记交互:
| AI 能做什么 | 示例 |
|---|---|
| 🔍 搜索与发现 | "找到我所有关于 Docker 部署的笔记" |
| 📝 创建与编辑 | "为明天的会议创建一个会议笔记模板" |
| 📁 整理 | "将所有项目笔记移到归档文件夹" |
| 🏷️ 标签与分类 | "列出所有标记了 #urgent 的笔记" |
| 📊 探索关联 | "展示我的笔记的知识图谱" |
| ✍️ 追加想法 | "把这段想法添加到我的每日日志中" |
一行命令配置 Cursor、Claude Desktop 等工具:
{
"mcpServers": {
"notediscovery": {
"command": "docker",
"args": ["run", "--rm", "-i", "-e", "NOTEDISCOVERY_URL=http://host.docker.internal:8000", "ghcr.io/gamosoft/notediscovery:latest", "python", "-m", "mcp_server"]
}
}
}
🚀 快速开始
Docker 一键运行
Linux/macOS:
mkdir -p notediscovery/data && cd notediscovery
docker run -d --name notediscovery -p 8000:8000 \
-v $(pwd)/data:/app/data \
ghcr.io/gamosoft/notediscovery:latest
Windows (PowerShell):
mkdir notediscovery\data; cd notediscovery
docker run -d --name notediscovery -p 8000:8000 `
-v ${PWD}/data:/app/data `
ghcr.io/gamosoft/notediscovery:latest
打开 http://localhost:8000 — 完成!🎉
笔记保存在 ./data/ 目录中。主题、插件、语言包和默认配置已包含在镜像内。
Docker Compose(带认证)
services:
notediscovery:
container_name: notediscovery
ports:
- 8900:8000
environment:
- AUTHENTICATION_ENABLED=true
- AUTHENTICATION_PASSWORD=<你的密码>
- AUTHENTICATION_SECRET_KEY=<你的密钥>
volumes:
- /data/note:/app/data
image: ghcr.io/gamosoft/notediscovery:latest
Docker Compose
提供两个 compose 文件:
| 文件 | 用途 |
|---|---|
docker-compose.ghcr.yml |
推荐 — 使用 GitHub Container Registry 预构建镜像 |
docker-compose.yml |
供开发使用 — 从本地源码构建 |
方案一:预构建镜像(最快)
mkdir -p notediscovery/data && cd notediscovery
curl -O https://raw.githubusercontent.com/gamosoft/notediscovery/main/docker-compose.ghcr.yml
docker-compose -f docker-compose.ghcr.yml up -d
方案二:从源码构建(用于开发)
git clone https://github.com/gamosoft/notediscovery.git
cd notediscovery
docker-compose up -d
直接运行(Python)
# 克隆仓库
git clone https://github.com/gamosoft/notediscovery.git
cd notediscovery
# 创建虚拟环境(推荐)
python -m venv venv
source venv/bin/activate # Bash/Zsh
# 或 Windows: .\venv\Scripts\activate
# 安装依赖并运行
pip install -r requirements.txt
python run.py
# 访问 http://localhost:8000
要求: Python 3.8+
Docker 数据卷说明
镜像内含配置、主题、插件和语言包。要自定义,只需映射对应的卷:
| 卷 | 用途 | 是否内置 |
|---|---|---|
data/ |
你的笔记 | ❌ 必须自行创建 |
config.yaml |
应用设置 | ✅ 有 |
themes/ |
自定义主题 | ✅ 有 |
plugins/ |
自定义插件 | ✅ 有 |
locales/ |
翻译文件 | ✅ 有 |
🌐 多语言支持
NoteDiscovery 通过 locales/ 目录下的 JSON 语言文件支持多语言界面。打开设置(齿轮图标)→ Language 即可选择。
Docker 用户可挂载自定义语言包:
volumes:
- ./locales:/app/locales # 自定义翻译
进阶技巧: 如果你克隆了仓库,可以挂载
documentation/文件夹,在应用内查看这些文档:volumes: - ./data:/app/data # 你的笔记 - ./documentation:/app/data/docs:ro # 将文档挂载到 data 下(只读)
📚 更多文档
- 🎨 THEMES.md — 主题定制和创建自定义主题
- ✨ FEATURES.md — 完整功能列表和快捷键
- ✏️ DRAWING.md — 内置绘图编辑器说明
- 🏷️ TAGS.md — 标签组织和联合筛选
- 📋 TEMPLATES.md — 使用模板创建笔记
- 🧮 MATHJAX.md — LaTeX 数学公式示例
- 📊 MERMAID.md — Mermaid 图表(流程图、时序图等)
- 🔌 PLUGINS.md — 插件系统和可用插件
- 🌐 API.md — REST API 文档和示例
- 🤖 MCP.md — AI 助手集成指南
- 🔐 AUTHENTICATION.md — 开启密码保护
- 🔧 ENVIRONMENT_VARIABLES.md — 环境变量配置
⚠️ 安全注意事项
NoteDiscovery 专为自建私有使用设计,请注意以下安全事项:
- ⚠️ 不要直接暴露到公网,在没有额外安全措施的情况下
- 生产环境请使用反向代理(nginx、Caddy)+ HTTPS
- 保持在本地网络或通过 VPN 远程访问
- 默认情况下应用监听
0.0.0.0:8000(所有网络接口) - 密码保护默认关闭(默认密码:admin)
- 如果暴露到网络,务必开启认证并修改默认密码!
- 禁用认证:在
config.yaml中设置authentication.enabled: false - 适合单人使用或小团队部署
- 多用户场景建议使用带 OAuth/SSO 的反向代理
- 笔记以纯文本 Markdown 文件存储在
data/文件夹中 - 数据不会发送到任何外部服务
- 建议定期备份
📦 仪表盘图标
NoteDiscovery 现已加入 Dashboard Icons!可在 Homepage、Homarr、Dashy、Heimdall 等自建仪表盘中使用的图标。
📜 许可证
MIT License — 自由使用、修改和分发。
为自建社区用 ❤️ 打造