Open WebUI 接入教程
开源的 ChatGPT 风格界面,功能强大,支持 Docker 一键部署
什么是 Open WebUI?
Open WebUI(原 Ollama WebUI)是一款功能强大的开源 AI 聊天界面,提供类似 ChatGPT 的用户体验,支持多种 LLM 后端。
完全开源
MIT 协议,代码完全开放
精美 UI
现代化界面,响应式设计
多模型支持
支持 OpenAI、Ollama 等多种后端
RAG 支持
内置文档问答和知识库功能
多用户
支持用户管理和权限控制
插件系统
丰富的扩展能力
💡 适用场景:
• 团队内部 AI 助手平台
• 私有化部署的 ChatGPT 替代品
• 需要 RAG 功能的知识库问答系统
• 多用户共享的 AI 服务
• 团队内部 AI 助手平台
• 私有化部署的 ChatGPT 替代品
• 需要 RAG 功能的知识库问答系统
• 多用户共享的 AI 服务
Docker 部署(推荐)
前提条件
| 依赖 | 版本要求 |
|---|---|
| Docker | 20.10+ |
| Docker Compose | v2.0+ |
快速部署
bash
# 1. 创建项目目录
mkdir open-webui && cd open-webui
# 2. 创建 docker-compose.yml
cat > docker-compose.yml << 'EOF'
version: '3.8'
services:
open-webui:
image: ghcr.io/open-webui/open-webui:main
container_name: open-webui
restart: always
ports:
- "3000:8080"
volumes:
- open-webui:/app/backend/data
environment:
- OLLAMA_BASE_URL=http://host.docker.internal:11434
- OPENAI_API_KEY=sk-你的API_KEY
# 可选:设置管理员账户
# - WEBUI_SECRET_KEY=your-secret-key
volumes:
open-webui:
EOF
# 3. 启动服务
docker compose up -d
# 4. 查看日志
docker logs -f open-webui
访问服务
部署完成后,访问 http://localhost:3000 即可使用 Open WebUI。
⚠️ 首次访问:首次打开会提示注册管理员账户。注册的第一个用户自动成为管理员。
配置 XiDao Api
方式一:通过环境变量(推荐)
docker-compose.yml
version: '3.8'
services:
open-webui:
image: ghcr.io/open-webui/open-webui:main
container_name: open-webui
restart: always
ports:
- "3000:8080"
volumes:
- open-webui:/app/backend/data
environment:
# 使用 OpenAI 兼容接口
- OPENAI_API_BASE_URL=https://api.xidao.online/v1
- OPENAI_API_KEY=sk-你的API_KEY
# 启用 OpenAI 兼容模式
- USE_OPENAI=true
volumes:
open-webui:
方式二:通过 Web 界面配置
- 登录 Open WebUI 后台
- 点击右上角头像 → Settings(设置)
- 选择 Connections(连接)选项卡
- 找到 OpenAI API 部分
- 填写以下信息:
- API Base URL:
https://api.xidao.online/v1 - API Key:
sk-你的API_KEY
- API Base URL:
- 点击 Save 保存
💡 提示:配置完成后,在新建对话时可以选择使用 OpenAI API 作为后端。
使用指南
切换模型
在对话界面顶部,点击模型名称即可切换不同的模型:
可用模型示例
# GPT 系列
gpt-4o # 最强性能
gpt-4o-mini # 性价比高
gpt-5 # 最新版本
# Claude 系列
claude-sonnet-4-5-20250929 # 推理能力强
claude-opus-4-5-20251101 # 最强 Claude
# Gemini 系列
gemini-2.5-pro # Google 最新
gemini-2.5-flash # 快速响应
RAG 文档问答
Open WebUI 内置 RAG 功能,可以上传文档进行智能问答:
- 在对话界面点击 + 按钮
- 选择 Documents(文档)
- 上传 PDF、TXT、MD 等文件
- 上传后可以直接针对文档内容提问
创建自定义助手
可以通过创建 Prompt 模板来定制专属助手:
- 点击左侧菜单的 + New Workspace
- 进入 Admin Panel → Prompts
- 创建新的 Prompt,定义角色和行为
- 在对话中选择该 Prompt 即可使用
高级配置
反向代理配置(Nginx)
nginx.conf
server {
listen 80;
server_name chat.yourdomain.com;
location / {
proxy_pass http://127.0.0.1:3000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
# WebSocket 支持
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
# 超时设置
proxy_read_timeout 86400;
proxy_send_timeout 86400;
}
}
启用 HTTPS
bash
# 安装 Certbot
apt install certbot python3-certbot-nginx -y
# 申请 SSL 证书
certbot --nginx -d chat.yourdomain.com
# 自动续期
certbot renew --dry-run
常用环境变量
| 变量名 | 说明 | 默认值 |
|---|---|---|
| OPENAI_API_BASE_URL | OpenAI API 地址 | - |
| OPENAI_API_KEY | API 密钥 | - |
| WEBUI_SECRET_KEY | 加密密钥 | 随机生成 |
| DEFAULT_MODELS | 默认模型列表 | 全部可用 |
| ENABLE_SIGNUP | 允许注册 | true |
| DEFAULT_USER_ROLE | 默认用户角色 | user |
⚠️ 安全建议:
• 生产环境务必启用 HTTPS
• 设置强密码并限制注册
• 定期更新 Docker 镜像
• 配置防火墙规则
• 生产环境务必启用 HTTPS
• 设置强密码并限制注册
• 定期更新 Docker 镜像
• 配置防火墙规则