PandaWiki 本地 AI 知识库搭建实战:从文档导入到远程访问
PandaWiki 能解决什么问题?
很多人把资料存进网盘、笔记软件或 NAS,但真正用起来却很麻烦:记得某段内容写过,却找不到在哪篇文档里;团队积累了不少说明文件,却没法直接拿来回答问题。PandaWiki 的核心价值不是“集中存储”,而是让已有文档变成可检索、可提问的知识源。
它支持导入网页、RSS、离线文件(如 Markdown),发布后用户可以直接向知识库提问,模型会基于文档内容作答,并附上引用来源。这意味着你的旧文档不再只是静态文本,而是能参与对话的“活”知识。
本文以实际操作为主线,在飞牛 NAS 上完成 PandaWiki 部署、模型接入、文档测试,并通过 cpolar 实现远程访问,最后为公开页面增加基础访问控制。
在飞牛 NAS 上安装 PandaWiki
部署的第一步是让 PandaWiki 本体跑起来。这需要通过 SSH 登录飞牛 NAS 并执行安装脚本。
首先在飞牛 NAS 设置中开启 SSH 功能,然后用 FinalShell 等工具连接。登录后切换到 root 用户:
sudo -i接着运行官方提供的交互式安装命令:
bash -c "$(curl -fsSLk https://release.baizhi.cloud/panda-wiki/manager.sh)"
按提示选择“安装”,默认目录回车即可。安装过程会自动拉取 Docker 镜像,完成后会显示内网访问地址、用户名和初始密码。

在浏览器中打开该地址,忽略安全警告后进入登录页,输入凭证即可看到 PandaWiki 管理后台首页。这说明服务已正常启动。

修改默认管理员密码

初始密码仅用于首次登录,建议立即修改为长期使用的密码。PandaWiki 的配置保存在 .env 文件中,默认路径为 /data/pandawiki/.env。

用 vim 编辑该文件:

vim /data/pandawiki/.env
按 i 进入编辑模式,找到 ADMIN_PASSWORD 字段,修改为新密码。完成后按 Esc,输入 :wq 保存退出。

最后重启服务使配置生效:

docker compose -f /data/pandawiki/docker-compose.yml up -d
接入 AI 模型并创建知识库站点

PandaWiki 本身只是一个内容管理平台,要实现智能问答,必须接入大模型。本文使用 DeepSeek 作为示例。

在管理后台首页点击“去添加”,选择“DeepSeek”作为供应商。前往 DeepSeek 平台 创建 API Key,复制后粘贴到 PandaWiki 对应字段,点击“获取模型列表”。

选择 deepseek-reasoner 模型(也可选 deepseek-chat,前者会展示推理过程,便于验证检索准确性)。保存后,系统会提示创建一个 Wiki 站点——这是用户实际访问、搜索和提问的前端页面,与管理后台分离。

填写站点名称(如“测试知识库”),端口若提示冲突可改为 8088。保存后点击“访问 WIKI 网站”,能打开空白知识库页面即表示前后端连通。

用真实文档验证问答能力

光看界面不够,得测试核心功能:导入文档后能否准确回答其中的问题。

我们直接用本文的 Markdown 文件做测试。在管理后台点击“创建文档”,新建一个“Markdown”文件夹,然后选择“通过离线导入”,上传当前文章的 .md 文件。

点击“拉取数据”后选择该文件导入。导入成功后,必须“发布新版本”才能在 WIKI 页面看到内容。发布时版本号和描述可使用默认值。

发布完成后,进入 WIKI 网站,左侧目录会出现刚导入的文件,点击可查看原文。现在进行关键测试:在搜索框输入“如何安装 PandaWiki?”

模型返回的答案不仅复述了安装步骤,还展示了原文中的截图,并在底部列出引用来源——正是我们刚导入的这篇文章。这证明 PandaWiki 真正实现了“基于文档的问答”,而非通用模型瞎猜。

至此,局域网内的完整链路已验证:安装 → 配置模型 → 导入文档 → 发布 → 智能问答。

通过 cpolar 实现公网远程访问

如果只在本地使用,到此结束即可。但若需在外网访问,就得处理公网可达性。这里使用 cpolar 做内网穿透。

需要注意:PandaWiki 有两个独立入口——
- 管理后台(如 http://192.168.x.x:2443):用于维护文档和设置
- WIKI 首页(如 http://192.168.x.x:8088):用于阅读和提问

两者用途不同,必须分别映射。

安装并配置 cpolar

在飞牛 NAS 的 SSH 终端执行:

sudo curl https://get.cpolar.sh | sh
安装后启动服务并检查状态:

sudo systemctl status cpolar
在浏览器访问 http://[NAS_IP]:9200,用 cpolar 官网账号登录,进入 Web 管理界面。

映射管理后台(随机域名测试)

先用免费的随机域名验证连通性。编辑默认的 website 隧道:
- 隧道名称:PandaWiki-2443
- 协议:HTTP
- 本地地址:127.0.0.1
- 本地端口:2443(PandaWiki 管理后台端口)

保存后,在“在线隧道列表”中会生成 http 和 https 地址。用 https 链接访问,能打开登录页并成功登录,说明管理后台公网可达。

映射 WIKI 首页

WIKI 站点默认使用 8088 端口(若安装时修改过则以实际为准)。点击“创建隧道”:
- 隧道名称:wiki-index-8088
- 协议:HTTP
- 本地地址:127.0.0.1
- 本地端口:8088

创建后同样获得两个公网地址。访问 https 链接,能打开知识库页面并正常提问,证明第二个入口也已打通。

升级为固定二级子域名

随机域名每 24 小时更换,不适合长期使用。升级 cpolar 任意套餐后,可保留固定二级子域名。

在 cpolar 后台 预留两个子域名,例如:
pandawiki→ 用于管理后台indexwiki→ 用于 WIKI 首页

然后分别编辑两条隧道,在“域名”字段填入对应的子域名。更新后,公网地址变为 https://pandawiki.cpolar.io 和 https://indexwiki.cpolar.io,可长期使用。

为 WIKI 首页增加访问授权

管理后台自带登录机制,但 WIKI 首页默认公开访问。一旦暴露到公网,可能带来隐私泄露或 API 费用风险。因此需增加一层访问控制。

在 cpolar 的隧道管理中,编辑 wiki-index-8088 隧道,展开“高级”选项,启用 HTTP 基础认证(HttpAuth)。格式为 用户名:密码,例如:

admin:123456
保存后,再次访问 WIKI 公网地址,浏览器会弹出登录框。输入正确凭证才能进入页面。这层认证由 cpolar 实现,不改变 PandaWiki 自身逻辑,但有效阻止了未授权访问。

整套系统的实际价值

这套方案最终形成四个关键组件:

- PandaWiki 管理后台:负责文档维护、模型配置和版本发布
- WIKI 首页:提供基于知识库的搜索与问答界面
- DeepSeek 模型:执行检索与生成,答案可追溯至原始文档
- cpolar + HttpAuth:确保两个入口安全、稳定地对外提供服务

它的意义不在于“又建了一个网站”,而在于让沉睡的文档重新参与工作流。你不再需要翻找几十个文件,而是直接问:“上次关于远程访问的配置步骤是什么?”——系统会从你的文档中找出答案,并带你回到原文位置。

对于个人或小团队,这种“向自己的知识提问”的能力,远比通用 AI 更精准、更可控。而本地部署+公网穿透的组合,既保障了数据主权,又不失灵活性。




