Skip to content

Open WebUI + Ollama 部署指南

模型: qwen3.6:27b-30k (27.8B 参数, Q4_K_M, 17GB, 30K 上下文)
GPU: AMD Radeon RX 7900 XTX (24GB VRAM, Vulkan)
节点: szb122009 (192.168.122.9 / 10.20.24.225)
最后更新: 2026-08-23


架构概览

用户浏览器

    ├─→ http://ai-ear.cn:9012 (公网 FRP)
    ├─→ http://192.168.122.9:9006 (局域网)
    └─→ http://localhost:9006 (本地)
    
┌──────────────────────────────────────────────┐
│  szb122009 (192.168.122.9)                     │
│                                                │
│  ┌──────────────────┐    ┌──────────────────┐ │
│  │ Docker: Open Web │    │ Ollama (systemd)  │ │
│  │ UI               │    │ 0.0.0.0:11434     │ │
│  │ :9006            │◄───│                    │ │
│  └──────────────────┘    │ qwen3.6:27b-30k  │ │
│                           │  (24GB, 30K ctx) │ │
│                           │ qwen3.6:27b       │ │
│                           └──────────────────┘ │
│                           AMD RX 7900 XTX 24GB │
│                                                │
│  ┌──────────────────┐                          │
│  │ FRP Client       │                          │
│  │ → ai-ear.cn:9012 │ (Open WebUI)             │
│  │ → ai-ear.cn:10086│ (Ollama API)             │
│  └──────────────────┘                          │
└──────────────────────────────────────────────┘

访问地址

Open WebUI (Web 界面)

方式URL说明
公网http://ai-ear.cn:9012FRP 隧道 (推荐)
局域网http://192.168.122.9:9006内网直连
本地http://localhost:9006本机访问

Ollama API (开发接口)

方式URL说明
公网http://ai-ear.cn:10086FRP 隧道
局域网http://192.168.122.9:11434内网直连
本地http://localhost:11434本机访问

文件清单

Open WebUI 配置

文件用途
docker-compose.ymlOpen WebUI 容器配置
deploy-open-webui.sh部署/运维脚本
README.md本文档

FRP 配置

文件用途
~/config/frp/frpc-open-webui.tomlFRP 端口转发配置
~/.config/systemd/user/frpc-open-webui.serviceFRP 服务配置

快速操作

bash
cd /home/xxx/docs/docs/ai-ear-website/worker/apps/k8s-gpu/uat2-gpu/open-webui

# 一键启动
bash deploy-open-webui.sh start

# 查看状态
bash deploy-open-webui.sh status

# 查看日志
bash deploy-open-webui.sh logs

# 停止
bash deploy-open-webui.sh stop

# 更新到最新版本
bash deploy-open-webui.sh update

手动操作步骤

1. 启动/停止容器

bash
cd /home/xxx/docs/docs/ai-ear-website/worker/apps/k8s-gpu/uat2-gpu/open-webui

# 启动
docker compose up -d

# 停止
docker compose down

# 重启
docker compose restart

# 查看日志
docker compose logs -f

2. 管理 Ollama

bash
# 查看模型
ollama list

# 查看运行中的模型
ollama ps

# 启动 Ollama
systemctl --user start ollama

# 停止 Ollama
systemctl --user stop ollama

配置文件位置

配置路径
docker-compose.yml/home/xxx/docs/docs/ai-ear-website/worker/apps/k8s-gpu/uat2-gpu/open-webui/docker-compose.yml
Open WebUI 数据/var/lib/docker/volumes/open-webui_open-webui-data/_data
Ollama systemd~/.config/systemd/user/ollama.service
Ollama 模型/home/xxx/.ollama/models
FRP 配置~/config/frp/frpc-open-webui.toml
FRP 服务~/.config/systemd/user/frpc-open-webui.service

在 Open WebUI 中选择模型

  1. 打开 http://ai-ear.cn:9012
  2. 使用账号登录(见下方登录信息)
  3. 点击顶部模型选择器
  4. 选择 qwen3.6:27b-30k
  5. 开始对话!

注意: 首次使用 qwen3.6:27b-30k 时,Ollama 需要加载模型到显存,可能需要等待 30-60 秒。


登录信息

字段
Emailxxx@ai-ear.cn
Passwordxxx

密码如需重置,见下方"故障排查 - 忘记密码"。


环境变量说明

变量说明
OLLAMA_BASE_URLhttp://127.0.0.1:11434Ollama 地址 (network_mode: host)
WEBUI_AUTHtrue启用登录认证
WEBUI_SECRET_KEYai-ear-openwebui-2026JWT 密钥
ENABLE_SIGNUPtrue允许新用户注册
DEFAULT_USER_ROLEadmin默认用户角色
PORT9006监听端口
RAG_EMBEDDING_MODELsentence-transformers/all-MiniLM-L6-v2嵌入模型

性能参考

模型大小VRAM 占用上下文生成速度 (估算)
qwen3.6:27b-30k17GB~24GB30K~8-15 tok/s
qwen3.6:27b-65k17GB~27GB65K~8-15 tok/s
qwen3.6:27b-100k17GB~30GB100K~8-15 tok/s
qwen3.6:27b17GB~17GB默认(262K)~8-15 tok/s

实际速度取决于 GPU 利用率和上下文长度。显存占用会随上下文长度增加而增长。


FRP 公网访问管理

bash
# 查看 FRP 服务状态
systemctl --user status frpc-open-webui.service

# 启动 FRP 服务
systemctl --user start frpc-open-webui.service

# 停止 FRP 服务
systemctl --user stop frpc-open-webui.service

# 重启 FRP 服务
systemctl --user restart frpc-open-webui.service

# 查看 FRP 日志
journalctl --user -u frpc-open-webui.service -f

# 开机自启
systemctl --user enable frpc-open-webui.service

FRP 端口映射

服务本地端口公网端口公网 URL
Open WebUI90069012http://ai-ear.cn:9012
Ollama API1143410086http://ai-ear.cn:10086

Ollama API 调用示例

bash
# 查看模型列表
curl http://ai-ear.cn:10086/api/tags

# 对话
curl http://ai-ear.cn:10086/api/chat \
  -d '{"model":"qwen3.6:27b-30k","messages":[{"role":"user","content":"你好"}]}'

# 使用 Ollama CLI
export OLLAMA_HOST=http://ai-ear.cn:10086
ollama list
ollama run qwen3.6:27b-30k "你好"

⚠️ 安全提示: Ollama API 已暴露到公网且无认证保护,任何人都可以通过 ai-ear.cn:10086 调用模型。


故障排查

Open WebUI 无法连接 Ollama

bash
# 检查 Ollama 是否运行
systemctl --user status ollama

# 检查 Ollama 端口
ss -tlnp | grep 11434

# 从容器内测试连接
docker exec open-webui curl -s http://127.0.0.1:11434/api/tags

容器无法启动

bash
# 查看容器日志
docker logs open-webui

# 检查端口占用
ss -tlnp | grep 9006

# 重建容器
cd /home/xxx/docs/docs/ai-ear-website/worker/apps/k8s-gpu/uat2-gpu/open-webui
bash deploy-open-webui.sh recreate

忘记密码

bash
# 重置密码为 123456 (使用 bcrypt 加密,写入 auth 表)
docker exec open-webui python3 -c "
import bcrypt, sqlite3
new_hash = bcrypt.hashpw(b'123456', bcrypt.gensalt()).decode('utf-8')
conn = sqlite3.connect('/app/backend/data/webui.db')
c = conn.cursor()
c.execute('UPDATE auth SET password = xxx WHERE email = ?', (new_hash, 'xxx@ai-ear.cn'))
conn.commit()
print('✅ 密码已重置为 123456')
conn.close()
"

更新日志

  • 2026-08-23: 切换模型到 qwen3.6:27b-30k (30K 上下文),显存占用从 27GB 降至 24GB,更适合 24GB 显卡
  • 2026-08-23: 配置 FRP 公网访问,Open WebUI 端口 9012,Ollama API 端口 10086
  • 2026-08-23: 从旧容器迁移到 docker-compose 管理,端口改为 9006,Ollama 连接改用 127.0.0.1:11434 (network_mode: host),Ollama keep_alive=-1 永久驻留
  • 2026-08-23: 创建 docker-compose.yml 和管理脚本,连接 Ollama qwen3.6:27b-65k