Files
YouduWiki/README.md
2026-05-21 22:00:16 +08:00

165 lines
5.6 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<p align="center">
<img src="/images/banner.png" width="400" />
</p>
<p align="center">
<strong>AI 大模型驱动的开源知识库搭建系统</strong>
</p>
<p align="center">
<a href="#hammer-二次开发说明">🔨 二次开发说明</a> &nbsp;|&nbsp;
<a href="#-上手指南">🚀 快速部署</a> &nbsp;|&nbsp;
<a href="#-功能与特色">🔥 功能特色</a>
</p>
---
> **YouduWiki** 基于 PandaWiki v3.85.0 二次开发,已移除所有商业订阅限制,开源版即享全部功能。
---
## 👋 项目介绍
YouduWiki 是一款 AI 大模型驱动的**开源知识库搭建系统**,帮助你快速构建智能化的 **产品文档、技术文档、FAQ、博客系统**。借助大模型的力量,提供 **AI 创作、AI 问答、AI 搜索** 等能力。
<p align="center">
<img src="/images/setup.png" width="800" />
</p>
## ⚡️ 界面展示
| 管理控制台 | Wiki 网站前台 |
|:--------------------------------------------:|:--------------------------------------------:|
| <img src="/images/screenshot-1.png" width=370 /> | <img src="/images/screenshot-2.png" width=370 /> |
| <img src="/images/screenshot-3.png" width=370 /> | <img src="/images/screenshot-4.png" width=370 /> |
## 🔥 功能与特色
- **AI 驱动智能化** — AI 辅助创作、AI 问答、AI 语义搜索
- **强大的富文本编辑** — 兼容 Markdown 和 HTML支持导出 Word、PDF、Markdown 等格式
- **第三方集成** — 网页挂件、钉钉 / 飞书 / 企业微信聊天机器人
- **多源内容导入** — 网页 URL、Sitemap、RSS 订阅、离线文件导入
- **全功能解锁** — 无知识库数量限制、无文档数限制、支持水印/复制保护/SSO/高级机器人等全部功能
## 🚀 上手指南
### 方式一:本地镜像部署(推荐)
```bash
# 1. 构建镜像并导出到 mirror/
./build-push.sh
# 2. 将项目传到部署服务器
scp -r . user@your-server:/home/user/youdu-wiki/
# 3. 在服务器上一键部署
cd /home/user/youdu-wiki
chmod +x deploy.sh
./deploy.sh --load ./mirror
```
约 1 分钟部署完成,终端会输出访问地址和初始密码。
### 方式二:源码构建部署
```bash
chmod +x deploy.sh
./deploy.sh
```
首次 20-30 分钟(需下载依赖 + 编译),后续缓存构建约 2-5 分钟。
### 方式三:远程 Registry 部署
```bash
# 先构建并推送镜像
./build-push.sh --push registry.cn-hangzhou.aliyuncs.com/your-ns
# 服务器上从 Registry 拉取部署
./deploy.sh --registry registry.cn-hangzhou.aliyuncs.com/your-ns
```
> 详细部署说明:[Ubuntu 22 部署指南](DEPLOY_UBUNTU22.md) | [自行构建开发指南](SELF_BUILD_GUIDE.md)
### 配置 AI 模型
首次登录后会提示配置 AI 大模型,支持以下方式接入:
| 方式 | 说明 |
|------|------|
| OpenAI 兼容 API | 任何兼容 `/v1/chat/completions` 接口的服务 |
| Ollama | 本地部署,`ollama pull qwen2.5:7b` 后填入地址 |
| DeepSeek | 官方 API |
> 在管理后台 → 设置 → 模型管理中配置。
### 登录
- 地址: `http://服务器IP:2443`(管理后台)/ `http://服务器IP:3010`Wiki 前端)
- 用户名: `admin`
- 密码: `.env` 文件中的 `ADMIN_PASSWORD`(首次部署自动生成)
---
## 🔨 二次开发说明
本仓库基于 PandaWiki v3.85.0 进行了以下修改:
### 修改的文件
| 文件 | 修改内容 |
|------|---------|
| `backend/domain/license.go` | 默认限制全解锁:知识库/文档/管理员数量不限,所有高级功能开关设为 true |
| `backend/usecase/stat.go` | 移除统计天数的版本校验1/7/30/90 天统计全开放 |
| `backend/repo/pg/auth.go` | 移除非企业版的 SSO 认证速率限制 |
| `web/admin/src/constant/version.ts` | 前端版本功能映射更新Free 版显示全部功能为可用 |
### 解锁功能对照
| 功能 | 原开源版 (Free) | YouduWiki |
|------|:---:|:---:|
| 知识库数量 | 1 个 | 无限制 |
| 单库文档数 | 300 篇 | 无限制 |
| 管理员数量 | 1 人 | 无限制 |
| 管理员分权控制 | 不支持 | 支持 |
| 自定义版权信息 | 不支持 | 支持 |
| 页面水印 | 不支持 | 支持 |
| 内容复制保护 | 不支持 | 支持 |
| 评论审核 | 不支持 | 支持 |
| 高级机器人配置 | 不支持 | 支持 |
| AI 问答机器人设置 | 不支持 | 支持 |
| MCP Server | 不支持 | 支持 |
| 文档统计 | 不支持 | 支持 |
| 统计数据周期 | 仅 1 天 | 1/7/30/90 天 |
| SSO 速率限制 | 有限制 | 无限制 |
### 项目结构
```
YouduWiki/
├── backend/ # Go 后端 (API + Consumer)
│ ├── domain/ # 领域模型 ← 版本限制修改
│ ├── usecase/ # 业务逻辑 ← 统计限制修改
│ ├── repo/pg/ # 数据访问 ← SSO限制修改
│ └── handler/ # HTTP 处理器
├── web/ # 前端 (pnpm monorepo)
│ ├── admin/ # 管理后台 (React + Vite) ← 版本映射修改
│ └── app/ # Wiki 前端 (Next.js)
├── mirror/ # 镜像导出目录
├── build-push.sh # 镜像构建 & 导出脚本
├── deploy.sh # 一键部署脚本
├── docker-compose.yml # Docker Compose 配置
├── SELF_BUILD_GUIDE.md # 自行构建开发指南
└── DEPLOY_UBUNTU22.md # Ubuntu 22 部署指南
```
---
## 📝 许可证
本项目基于 PandaWiki 二次开发,原始项目采用 [AGPL-3.0](LICENSE) 许可证,本修改版同样以 AGPL-3.0 开源。
- 你可以自由使用、修改和分发
- 修改后的代码须以相同许可证开源
- 通过网络提供服务也须开源代码