搬瓦工 VPS 部署 Open WebUI 大模型聊天界面教程

Open WebUI(原 Ollama WebUI)是目前最受欢迎的开源大模型聊天界面项目,它提供了类似 ChatGPT 的精美界面,支持对接多种大模型后端。Open WebUI 功能极为丰富,包括多模型切换、对话管理、RAG 知识库、用户管理、插件系统等。本教程将介绍如何在搬瓦工 VPS 上完整部署 Open WebUI。

一、核心功能

  • 多后端支持:同时对接 Ollama、OpenAI API 和任何兼容接口。
  • 用户管理:支持多用户注册和权限管理。
  • RAG 知识库:上传文档创建知识库,增强模型回答质量。
  • 对话管理:完整的对话历史、分享和导出功能。
  • 模型管理:直接在界面中管理和下载模型。
  • 插件系统:通过 Functions 和 Pipelines 扩展功能。

二、环境要求

  • 操作系统:Ubuntu 20.04 或更高版本。
  • 内存:至少 2GB(仅界面),配合本地模型需要更多。
  • Docker:需要 Docker 环境。

部署前需安装 Docker,参考 Docker 安装教程。选购 VPS 请参考 全部方案

三、Docker 快速部署

3.1 对接 OpenAI 兼容 API

如果你已经部署了 Llama.cppvLLM 等推理服务:

docker run -d \
  --name open-webui \
  -p 3000:8080 \
  -v open-webui:/app/backend/data \
  -e OPENAI_API_BASE_URL=http://host.docker.internal:8080/v1 \
  -e OPENAI_API_KEY=not-needed \
  --restart unless-stopped \
  ghcr.io/open-webui/open-webui:main

3.2 使用 Docker Compose

mkdir -p /opt/open-webui && cd /opt/open-webui

cat > docker-compose.yml <<'EOF'
version: '3.8'
services:
  open-webui:
    image: ghcr.io/open-webui/open-webui:main
    ports:
      - "3000:8080"
    volumes:
      - open-webui-data:/app/backend/data
    environment:
      - OPENAI_API_BASE_URL=http://host.docker.internal:8080/v1
      - OPENAI_API_KEY=not-needed
      - WEBUI_AUTH=true
      - ENABLE_SIGNUP=true
    extra_hosts:
      - "host.docker.internal:host-gateway"
    restart: unless-stopped

volumes:
  open-webui-data:
EOF

docker compose up -d

四、首次配置

访问 http://your-ip:3000,第一个注册的用户将自动成为管理员。注册后进入设置页面完成以下配置:

  • 模型连接:在 Settings > Connections 中配置 OpenAI API 地址。
  • 默认模型:在 Settings > Models 中选择默认使用的模型。
  • 用户注册:在 Admin > Settings 中控制是否允许新用户注册。

五、对接多个模型后端

Open WebUI 支持同时对接多个 API 后端:

# 同时连接 Llama.cpp 和 vLLM
docker run -d \
  --name open-webui \
  -p 3000:8080 \
  -v open-webui:/app/backend/data \
  -e OPENAI_API_BASE_URLS="http://host.docker.internal:8080/v1;http://host.docker.internal:8000/v1" \
  -e OPENAI_API_KEYS="not-needed;not-needed" \
  --extra-host=host.docker.internal:host-gateway \
  --restart unless-stopped \
  ghcr.io/open-webui/open-webui:main

六、配置 RAG 知识库

Open WebUI 内置了 RAG 功能,可以上传文档增强模型回答:

  • 在左侧菜单中进入 Workspace > Knowledge。
  • 创建新的知识库并上传文档(支持 PDF、TXT、MD 等格式)。
  • 在对话中通过 # 标签引用知识库。

RAG 功能的嵌入模型可以在 Admin > Settings > Documents 中配置。

七、Nginx 反向代理

cat > /etc/nginx/sites-available/open-webui <<'EOF'
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;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        proxy_read_timeout 300;
        client_max_body_size 100M;
    }
}
EOF
ln -s /etc/nginx/sites-available/open-webui /etc/nginx/sites-enabled/
nginx -t && systemctl reload nginx

八、环境变量配置

Open WebUI 通过环境变量进行配置,常用变量包括:

  • WEBUI_AUTH:是否启用用户认证,设为 true。
  • ENABLE_SIGNUP:是否允许新用户注册。
  • DEFAULT_USER_ROLE:新用户默认角色,可选 user 或 pending。
  • WEBUI_NAME:自定义界面名称。
  • OPENAI_API_BASE_URL:OpenAI 兼容 API 地址。

九、数据备份

# 备份 Open WebUI 数据
docker compose stop
docker run --rm -v open-webui-data:/data -v /opt/backups:/backup \
  alpine tar czf /backup/open-webui-$(date +%Y%m%d).tar.gz -C /data .
docker compose start

十、更新 Open WebUI

# 拉取最新镜像并重启
cd /opt/open-webui
docker compose pull
docker compose up -d

十一、常见问题

无法连接到模型后端

确认 extra_hosts 配置正确(Docker 环境中访问宿主机服务),或使用宿主机 IP 地址而非 localhost。

流式输出不工作

确认 Nginx 配置中包含了 WebSocket 相关的头部设置,并设置了足够的超时时间。

总结

Open WebUI 是部署私有 AI 聊天界面的最佳选择,功能全面且界面精美。配合 Llama.cpp 或通过 One API 管理多个模型密钥,可以构建功能强大的 AI 聊天平台。选购搬瓦工 VPS 请查看 全部方案,使用优惠码 NODESEEK2026 可享受 6.77% 的折扣,购买链接:bwh81.net

关于本站

搬瓦工VPS中文网(bwgvps.com)是非官方中文信息站,整理搬瓦工的方案、优惠和教程。我们不销售主机,不提供技术服务。

新手必读
搬瓦工优惠码

NODESEEK2026(优惠 6.77%)

购买时填入即可抵扣。