project-nomad
离线优先的知识与教育服务器,内置本地 AI 聊天(基于 Ollama 和 Qdrant 实现 RAG)、离线维基百科、Khan Academy 课程等完整工具链。与同类离线知识库相比,它通过 Docker 统一编排所有服务,一键安装且完全浏览器访问,适合无互联网环境下的学习与信息检索。注意无内置鉴权,部署到局域网需自行控制端口暴露。
README

Project N.O.M.A.D.
Node for Offline Media, Archives, and Data
永不掉线的知识
Project N.O.M.A.D. 是一个自包含、离线优先的知识与教育服务器,集成了关键工具、知识和 AI,让你随时随地保持知情并拥有能力。
安装与快速入门
Project N.O.M.A.D. 可以安装在任何基于 Debian 的操作系统上(推荐 Ubuntu)。安装过程完全在终端中完成,所有工具和资源均设计为通过浏览器访问,因此如果你更愿意将 N.O.M.A.D. 设置为“服务器”并通过其他客户端访问,则无需桌面环境。
注意:运行安装脚本需要 sudo/root 权限
快速安装(仅限基于 Debian 的操作系统)
sudo apt-get update && \
sudo apt-get install -y curl && \
curl -fsSL https://raw.githubusercontent.com/Crosstalk-Solutions/project-nomad/refs/heads/main/install/install_nomad.sh \
-o install_nomad.sh && \
sudo bash install_nomad.sh
Project N.O.M.A.D. 现已安装在你的设备上!打开浏览器并导航到 http://localhost:8080(或 http://DEVICE_IP:8080)即可开始探索!
如需完整的分步指南(包括 Ubuntu 安装),请参阅安装指南。对于 Windows 用户,请参阅 WSL2 安装指南 —— 这是社区支持的路径,涵盖了原生 Docker 和 Docker Desktop 安装方式。
高级安装
如需对安装过程有更多控制,请将 Docker Compose 模板 复制粘贴到 docker-compose.yml 文件中,并根据喜好进行自定义(确保将所有占位符替换为你的实际值)。然后,运行 docker compose up -d 启动 Command Center 及其依赖项。注意:此方法仅推荐给高级用户,因为它需要熟悉 Docker 并在启动前进行手动配置。
工作原理
N.O.M.A.D. 是一个管理 UI(“Command Center”)和 API,通过 Docker 编排一组容器化的工具和资源。它负责所有内容的安装、配置和更新——你无需亲力亲为。
内置功能包括:
- AI 聊天与知识库 —— 基于 Ollama 的本地 AI 聊天,也可使用兼容 OpenAI API 的软件(如 LM Studio 或 llama.cpp),支持文档上传和语义搜索(通过 Qdrant 实现的 RAG(检索增强生成))
- 信息库 —— 离线维基百科、医学参考资料、电子书等,由 Kiwix 提供
- 教育平台 —— 可追踪进度的 Khan Academy 课程,由 Kolibri 提供
- 离线地图 —— 可通过 ProtoMaps 下载的区域地图
- 数据处理工具 —— 加密、编码和分析,由 CyberChef 提供
- 笔记 —— 本地笔记记录,由 FlatNotes 提供
- 系统基准测试 —— 硬件评分,附带社区排行榜
- 简易设置向导 —— 引导式首次配置,提供精选内容合集
N.O.M.A.D. 还包含内置工具,如维基百科内容选择器、ZIM 库管理器和内容浏览器。
包含内容
| 功能 | 技术支撑 | 提供内容 |
|---|---|---|
| 信息库 | Kiwix | 离线维基百科、医学参考资料、生存指南、电子书 |
| AI 助手 | Ollama + Qdrant | 内置聊天,支持文档上传和语义搜索 |
| 教育平台 | Kolibri | Khan Academy 课程、进度追踪、多用户支持 |
| 离线地图 | ProtoMaps | 可下载区域地图,支持搜索和导航 |
| 数据处理工具 | CyberChef | 加密、编码、哈希和数据分析 |
| 笔记 | FlatNotes | 本地笔记记录,支持 markdown |
| 系统基准测试 | 内置 | 硬件评分、构建标签和社区排行榜 |
设备要求
虽然许多类似的离线生存计算机设计为在最低限度、轻量级硬件上运行,但 Project N.O.M.A.D. 恰恰相反。要安装和运行所提供的 AI 工具,我们强烈建议使用性能强劲、配备 GPU 的设备,以充分利用安装功能。
然而,N.O.M.A.D. 核心本身仍然非常轻量。对于管理应用程序的最小安装,需要以下最低规格:
注意:Project N.O.M.A.D. 不受任何硬件制造商赞助,旨在尽可能与硬件无关。以下列出的硬件仅用于示例/对比用途
最低规格
- 处理器:2 GHz 双核处理器或更好
- 内存:4 GB 系统内存
- 存储:至少 5 GB 可用磁盘空间
- 操作系统:基于 Debian(推荐 Ubuntu)
- 稳定的互联网连接(仅在安装时需要)
要运行 LLM(大语言模型)和其他包含的 AI 工具:
最佳规格
- 处理器:AMD Ryzen 7 或 Intel Core i7 或更好
- 内存:32 GB 系统内存
- 显卡:NVIDIA RTX 3060 或 AMD 同等或更好(显存越大,可运行越大模型)
- 存储:至少 250 GB 可用磁盘空间(建议 SSD)
- 操作系统:基于 Debian(推荐 Ubuntu)
- 稳定的互联网连接(仅在安装时需要)
如需三个价位($150–$1,000+)的详细构建建议,请参阅硬件指南。
再次强调,Project N.O.M.A.D. 本身相当轻量——真正决定所需规格的是你选择通过 N.O.M.A.D. 安装的工具和资源。
在不同主机上运行 AI 模型
默认情况下,N.O.M.A.D. 的安装程序会在安装 AI 助手时尝试在主机上设置 Ollama。但是,如果你希望在不同的主机上运行 AI 模型,可以进入 AI 助手的设置,输入 ollama 或兼容 OpenAI API 的 API 服务器(如 LM Studio)的 URL。
注意:如果在不同主机上使用 Ollama,必须以 OLLAMA_HOST=0.0.0.0 选项启动服务器。
Ollama 是使用 AI 助手的首选方式,因为它具有模型下载等 OpenAI API 不支持的功能。例如,使用 LM Studio 时,你需要通过 LM Studio 自行下载模型。
你需要负责在另一台主机上设置 Ollama/OpenAI 服务器。
常见问题(FAQ)
关于 Project N.O.M.A.D. 常见问题的解答,请参阅我们的 FAQ 页面。
关于互联网使用与隐私
Project N.O.M.A.D. 设计为离线使用。仅初始安装(下载依赖)以及你(用户)决定后续下载额外工具和资源时需要互联网连接。否则,N.O.M.A.D. 不需要互联网连接,并且零内置遥测。
为测试互联网连接性,N.O.M.A.D. 会尝试向 Cloudflare 的实用端点 https://1.1.1.1/cdn-cgi/trace 发起请求,并检查是否成功响应。
关于安全性
Project N.O.M.A.D. 的设计意图是开放且易于访问——它不包含身份验证。如果你在安装后决定将设备连接到本地网络(例如,允许其他设备访问其资源),你可以通过阻止/开放端口来控制哪些服务被暴露。
未来会添加身份验证吗? 也许。目前这不是优先事项,但如果有足够需求,我们可能会考虑在未来的版本中构建可选的身份验证层,以支持需要多个用户访问同一实例但拥有不同权限级别的用例(例如,带有家长控制的家庭使用,带有教师/管理员账户的课堂使用等)。我们的公开路线图上已有此建议,如果你希望看到此功能,请在此处投票:https://roadmap.projectnomad.us/posts/1/user-authentication-please-build-in-user-auth-with-admin-user-roles
目前,如果你计划将 N.O.M.A.D. 实例暴露给本地网络中的其他设备,我们建议使用网络级别的访问控制。N.O.M.A.D. 并非设计为直接暴露到互联网,我们强烈建议不要这样做,除非你确实知道自己在做什么,已采取适当的安全措施,并了解相关风险。
贡献
欢迎并感谢各种贡献!请参阅 CONTRIBUTING.md 了解如何为项目做出贡献的指南。
社区与资源
- 网站: www.projectnomad.us - 了解更多关于项目的信息
- Discord: 加入社区 - 获取帮助、分享你的构建、与其他 NOMAD 用户交流
- 基准测试排行榜: benchmark.projectnomad.us - 查看你的硬件与其他 NOMAD 构建的比较情况
- 故障排除指南: TROUBLESHOOTING.md - 查找常见问题的解决方案
- 常见问题: FAQ.md - 查找常见问题的答案
- 社区附加组件: admin/docs/community-add-ons.md - 社区构建的第三方内容包
许可证
Project N.O.M.A.D. 采用 Apache License 2.0 许可证。
辅助脚本
安装后,Project N.O.M.A.D. 提供几个辅助脚本,供你在需要排查问题或执行无法通过 Command Center 完成的维护时使用。所有这些脚本都位于 Project N.O.M.A.D. 的安装目录 /opt/project-nomad 中。
启动脚本 - 启动所有已安装的项目容器
sudo bash /opt/project-nomad/start_nomad.sh
停止脚本 - 停止所有已安装的项目容器
sudo bash /opt/project-nomad/stop_nomad.sh
更新脚本 - 尝试拉取 Command Center 及其依赖项(如 mysql)的最新镜像,并重新创建容器。注意:这仅更新 Command Center 容器,不会更新可安装的应用程序容器——这应通过 Command Center UI 完成
sudo bash /opt/project-nomad/update_nomad.sh
卸载脚本 - 需要重新开始?使用卸载脚本轻松解决。注意:此操作不可撤销!
curl -fsSL https://raw.githubusercontent.com/Crosstalk-Solutions/project-nomad/refs/heads/main/install/uninstall_nomad.sh -o uninstall_nomad.sh && sudo bash uninstall_nomad.sh