PandaWiki AI知识库:飞牛NAS部署、Markdown问答与双入口远程访问
前言
PandaWiki 是一套面向文档管理、发布和 AI 检索问答的知识库系统。这篇采用飞牛 NAS 部署,通过 SSH 执行管理脚本完成安装,再修改 .env 中的后台密码,并用 Docker Compose 刷新服务。
模型部分以 DeepSeek 为例,配置 API Key 后创建 Wiki 站点。随后导入一篇 Markdown 文件、拉取数据、发布版本,再直接从 Wiki 页面发起问题,验证模型能否检索文档并返回带引用的回答。
远程访问部分不是只穿一个端口:管理后台和 Wiki 首页是两个入口,分别建立公网隧道;长期使用时再给两边配置独立的固定二级子域名。
Wiki 首页默认没有额外登录保护,因此最后继续增加 HttpAuth,避免公开地址被随意调用。
整篇重点放在“飞牛NAS安装—模型接入—Markdown导入—发布问答—双入口远程访问—Wiki访问认证”这条实际链路上,同时区分本地知识库与云端模型推理的边界。
这里还有一个容易忽略的结构:PandaWiki 后台和 Wiki 首页并不是同一个远程入口。后台用于导入、发布和模型配置,Wiki 更偏阅读、检索和提问,因此后面会分别建立隧道、分别配置固定地址,并只给 Wiki 首页额外增加 HttpAuth。这样也更方便分别处理后台维护和普通访问的权限边界。

1 PandaWiki到底解决什么问题
PandaWiki 更适合解决“资料集中以后怎么继续使用”。
它可以把文档放进统一知识库,再继续提供 AI 辅助创作、AI 问答、AI 搜索、Markdown / HTML 编辑、文档发布以及多种内容导入方式。
对于已经有 NAS 的用户来说,它比较有意思的一点是:
资料可以继续放在自己的环境里,同时再增加一个 Wiki 和 AI 检索入口。
但如果 AI 模型使用的是云端 API,提问和模型处理环节仍然会经过外部模型服务。
2 先在飞牛NAS开启SSH
进入飞牛 NAS 设置,打开 SSH:

然后使用 SSH 工具连接,这里使用 FinalShell:

如果不是 root 用户,先执行:
sudo -i

进入 root 环境以后,再继续安装 PandaWiki。
3 运行PandaWiki安装脚本
执行:
bash -c "$(curl -fsSLk https://release.baizhi.cloud/panda-wiki/manager.sh)"
进入交互式管理菜单以后,选择安装:

接着选择安装目录:

不修改时可以直接使用默认位置。
然后等待镜像拉取:

安装完成以后,终端会显示内网访问地址、用户名和密码:

这些信息先保存好。
4 第一次进入管理后台
浏览器打开安装完成后给出的内网地址。
如果浏览器提示证书或连接不安全:

继续进入后,可以看到登录页:

使用安装时给出的账号和密码登录:

现在已经进入 PandaWiki 管理后台。
5 修改管理员密码
安装完成后的初始密码不适合长期继续使用。
界面里可以看到修改密码相关提示:

这里安装目录使用:
/data/pandawiki/
直接编辑:
vim /data/pandawiki/.env
打开 .env 后,修改管理后台登录密码:

保存以后执行:
docker compose -f /data/pandawiki/docker-compose.yml up -d

这样容器会按照新的配置重新拉起。
真正使用时建议设置一组独立强密码,不要和 NAS、SSH 或其他服务共用。
6 接入AI对话模型
回到 PandaWiki 首页,点击“去添加”:

选择模型供应商:

这里以 DeepSeek 为例。
如果自己已经有本地模型环境,也可以选择本地模型方案。两者最大的区别是:
- 云端 API:部署简单,但模型请求会发往外部服务;
- 本地模型:数据链更本地化,但需要额外算力和模型环境。
DeepSeek API Key 地址:
https://platform.deepseek.com/api_keys

创建 Key 后,回到 PandaWiki 填入,并获取模型列表。
这里选择 Reasoner:

保存以后,继续创建 Wiki 站点。
7 创建Wiki站点
填写知识库名称:

如果端口冲突,就换一个没有被占用的端口。
创建完成以后,点击“访问 WIKI 网站”:

Wiki 页面:

到这里,PandaWiki 的基本环境已经跑起来。
接下来真正验证它是不是“知识库”,要继续导入自己的文档。
8 导入一篇Markdown文档
进入后台,点击“创建文档”:

这里先创建 Markdown 文件夹,再通过离线导入上传 Markdown 文件:

上传后先执行“拉取数据”,等待处理完成,再选择文件并导入:

导入完成:

这里只是把资料送进知识库。
还要继续发布,Wiki 页面才能按照版本展示。
9 发布知识库版本
点击“去发布”:

填写版本号和版本描述,也可以使用自动生成的信息。
发布成功以后,再打开 Wiki:

左侧已经出现 Markdown 目录、导入的 Markdown 文件以及对应正文内容。
这时资料已经不只是后台里的一条导入记录,而是进入了可以被浏览和检索的 Wiki 结构。
10 真正问一次自己的文档
点击搜索或回到 Wiki 首页提问:

测试问题:
如何安装PandaWiki?

这里使用的是 DeepSeek Reasoner。
模型开始检索已经导入的文档:

最终回答里还能显示文章中的图片和引用来源:

这一段是整个知识库流程最关键的验证。
因为它证明了:
文档导入 → 发布 → 检索 → 回答 → 引用来源
已经形成闭环。
11 “本地AI知识库”要分两层理解
PandaWiki 部署在飞牛 NAS 上,文档管理和 Wiki 服务都由自己的设备承载。
但这里模型使用的是 DeepSeek API。
所以更准确的说法应该是:
知识库服务本地部署,AI能力由配置的模型 Provider 提供。
如果模型 Provider 是云端 API,那么 AI 推理不是完全本地。
如果后续改接本地 Ollama 或其他本地模型,才更接近“文档 + 模型都在本地”的形态。
这个区别对于隐私要求高的资料尤其重要。
12 本地使用没问题后,再处理远程访问
前面已经跑通 PandaWiki 管理后台、Wiki 页面、文档导入和 AI 问答。
如果只在家里局域网使用,到这里已经够了。
如果人在外面还需要上传资料、管理知识库、查看 Wiki 或发起 AI 提问,再继续配置远程入口。
这里 cpolar 只负责网络入口,不参与文档存储和 AI 推理。
13 在飞牛NAS安装cpolar
cpolar 介绍:

执行:
sudo curl https://get.cpolar.sh | sh

安装完成后检查服务状态:
sudo systemctl status cpolar

然后通过:
飞牛NAS IP:9200
进入 cpolar Web UI:

14 PandaWiki实际上有两个远程入口
这里不是只创建一条隧道。
因为 PandaWiki 有两个不同用途的页面:
- 管理后台;
- Wiki 首页 / 提问页面。
这两边应该分别处理。
先看管理后台。
15 先把管理后台映射出去
进入隧道列表:

编辑 website 隧道,改成 PandaWiki 管理后台需要的参数:

更新以后查看在线隧道:

可以看到 PandaWiki-2443 对应的 HTTP / HTTPS 公网地址。
先访问 HTTPS:

进入登录页以后,用前面修改过的密码登录:

登录成功后,说明管理后台的远程访问已经打通。
16 Wiki首页还需要第二条隧道
管理后台能访问,不代表 Wiki 首页已经能从公网打开。
进入设置查看 Wiki 端口:

这里使用:
8088
然后回到 cpolar,新建第二条隧道:

创建完成后查看:
wiki-index-8088

访问它的 HTTPS 地址:

页面不仅能打开,也可以继续提问。
到这里,两个入口都完成了随机地址验证:
- PandaWiki 管理后台;
- Wiki 首页。
17 为什么更建议管理后台和Wiki分开
两个入口用途不同。
管理后台可以导入文档、修改配置、管理模型和发布版本。
Wiki 首页主要用于阅读、搜索和提问。
把它们拆成两个独立入口,更容易做不同的访问控制。
例如:
后台只自己使用,Wiki 可以分享给家人或团队。
后面固定域名也按这个思路分别配置。
18 给两个入口分别准备固定二级子域名
进入预留页面:
https://dashboard.cpolar.com/reserved
操作页面:

这里预留了两个名称:
pandawiki:管理后台;indexwiki:Wiki 首页。
然后先编辑 PandaWiki-2443:

更新以后查看在线隧道:

访问管理后台固定地址:

管理后台已经可以通过固定 HTTPS 地址访问。
19 再给Wiki首页切换固定地址
回到隧道列表,编辑:
wiki-index-8088

填写 Wiki 首页对应的二级子域名:

更新以后查看:

再用 HTTPS 测试:

这里还切换成了 deepseek-chat 模型进行回答测试。
现在两个入口都已经分别拥有固定地址。
20 Wiki首页公开以后,还应该增加访问认证
PandaWiki 管理后台本身有账号密码。
但 Wiki 首页默认可以直接访问。
如果这个 Wiki 只给自己、家人或者小团队使用,那么公开地址不应该完全裸露。
因为别人不仅能看到内容,还可能继续发起 AI 请求,消耗模型额度。
所以这里再给 Wiki 首页增加一层 HttpAuth。
21 配置Wiki首页HttpAuth
进入隧道列表,找到:
wiki-index-8088
点击编辑:

展开高级设置。
在 HttpAuth 中填写:
用户名:密码
示例:
admin:123456

这个密码只是演示。
真实使用不建议直接采用 123456。
22 验证访问认证
重新打开 Wiki 公网地址:

浏览器会先弹出用户名和密码验证框。
通过以后才能进入 Wiki 页面。
到这里,外部访问链路变成:
公网地址 → HttpAuth → Wiki 首页 → PandaWiki → 模型 Provider
需要注意:
HttpAuth 是网络入口的一层基础认证。
它不等于 PandaWiki 内部的完整多用户权限系统。
23 这套知识库真正跑通了哪些环节
这次已经实际完成:
- 飞牛 NAS SSH;
- PandaWiki 安装;
- 管理后台登录;
- 管理员密码修改;
- DeepSeek 模型接入;
- Wiki 创建;
- Markdown 离线导入;
- 文档发布;
- AI 检索问答;
- 引用来源展示;
- 管理后台远程访问;
- Wiki 首页远程访问;
- 两个固定二级子域名;
- Wiki 首页 HttpAuth。
这已经是一条比较完整的知识库工作流。
但它没有证明所有格式文档都能无误解析、所有模型回答都可靠、AI 推理完全本地、团队多用户权限已经完整配置,也没有证明所有公网访问都具备企业级安全能力。
真正长期使用时,还要继续根据资料敏感程度调整模型、账号和网络策略。
24 这类方案更适合什么人
它比较适合:
- 已经有飞牛 NAS;
- Markdown 和文档越来越多;
- 想给自己的资料加 AI 检索;
- 不想把整套知识库完全托管给第三方平台;
- 需要从外面访问自己的 Wiki;
- 想把后台和阅读入口分开的用户。
如果只是记几条临时备忘录,PandaWiki 会显得重。
但如果资料已经多到需要“发布、检索、引用和问答”,它就不只是笔记工具,而更像一个自己的文档知识站。
总结
整套流程可以拆成四层:飞牛 NAS 承载 PandaWiki,模型 Provider 提供 AI 能力,Markdown 导入与版本发布构成知识内容层,公网隧道负责把管理后台和 Wiki 首页分别带到外部网络。
本地阶段已经验证了管理员配置、DeepSeek 接入、文档导入、发布、AI 检索问答和引用来源;公网阶段则继续完成了 PandaWiki-2443 与 wiki-index-8088 两个独立入口。
两个入口分别配置固定地址以后,Wiki 首页又增加 HttpAuth,这比只给整套服务一个公开地址更容易区分后台管理和普通访问。
如果后续要进一步提高隐私和安全性,下一步应该继续考虑本地模型、多用户权限和更严格的访问策略,而不是把“服务部署在 NAS”直接等同于“所有数据处理都完全不离开本地”。
转载自 CSDN-专业IT技术社区
原文链接:https://blog.csdn.net/hanwangyyds/article/details/167684802




