---
title: "搭建自己的 Open WebUI：接入模型、管理账号与保存会话"
description: "用 Zenavo 的模板部署 Open WebUI，连接 OpenAI 兼容模型接口，完成管理员注册与访问控制，并做好数据卷备份和升级。"
date: 2026-11-10
language: zh-CN
url: https://zenavo.app/zh-CN/blog/self-host-open-webui
---

# 搭建自己的 Open WebUI：接入模型、管理账号与保存会话

如果你手头已经有各家大模型的 API Key，想搭一个属于自己或小团队的网页聊天入口，[Open WebUI](https://openwebui.com) 是最省心的单容器方案之一：自带多用户账号、对话历史、知识库文档和模型切换，装好就能用。

这篇文章用 Zenavo 的 Open WebUI 模板，把界面部署到你自己的服务器上，再接入外部模型接口。如果你想对比包含 PostgreSQL、Redis 和独立 S3 存储的多人工作台，也可以看看 [LobeHub 部署指南](https://zenavo.app/zh-CN/blog/self-host-lobehub)。

模板本身不包含本地大模型或 GPU 推理；服务器、Zenavo 平台和上游模型 API 分别计费。

## 部署 Open WebUI

先在 Zenavo 中[连接一台 Linux 服务器](https://docs.zenavo.app/zh-CN/servers/add-a-server)，再打开 [Open WebUI 模板](https://zenavo.app/deploy?template=open-webui)，选择服务器并部署。

当前模板的配置如下：

| 配置 | 值或用途 |
|---|---|
| 镜像 | `ghcr.io/open-webui/open-webui:main` |
| HTTP 端口 | `8080` |
| 持久化目录 | `/app/backend/data`，SQLite 数据库、上传文档和设置都在这里 |
| `WEBUI_SECRET_KEY` | 项目创建时自动生成，用于登录会话加密 |
| `ENABLE_OLLAMA_API` | `false`，默认关闭本地 Ollama 探测，直接用外部 API |
| 遥测变量 | 默认关闭 `SCARF_NO_ANALYTICS`、`DO_NOT_TRACK` 和 `ANONYMIZED_TELEMETRY` |
| 内存 | 建议预留 2 GB |

`main` 标签会随上游更新。准备长期稳定使用时，在服务 **设置** 的 **来源** 中把镜像改成你验证过的固定版本（例如 `ghcr.io/open-webui/open-webui:v0.6.5`）。

## 绑定域名，立刻注册管理员账号

在 open-webui 服务的 **网络** 页为 `8080` 端口绑定域名，例如 `chat.example.com`，在 DNS 添加指向服务器的 A 记录，等待 HTTPS 生效。步骤见[域名文档](https://docs.zenavo.app/zh-CN/networking/domains)。

**域名一生效就打开网站注册第一个账号。** Open WebUI 会把第一个注册的人设为管理员；在你完成注册之前，任何知道这个网址的人都能抢先注册成管理员。

注册登录后，打开 **管理员面板 → 设置 → 通用（Admin Panel → Settings → General）**，检查新用户注册策略：

- 只给自己用：关闭新用户注册（禁用 Sign Up）；
- 给团队用：把默认用户角色设为“待审批（pending）”，只有你批准过的账号才能使用模型。

## 接入模型接口

打开 **管理员面板 → 设置 → 外部连接（Connections）**，在 OpenAI API 一栏填入模型服务商的 Base URL 和 API Key，保存后即可在聊天页左上角看到模型列表。

常见接法：

- **直连官方或兼容接口**：填入服务商提供的 OpenAI 兼容地址（通常以 `/v1` 结尾，注意不要重复拼两遍 `/v1`）和对应的 API Key。
- **通过自建网关接入**：如果你部署了 [New API](https://zenavo.app/zh-CN/blog/self-host-new-api)、[Magpie](https://zenavo.app/zh-CN/blog/self-host-magpie) 或 [LiteLLM](https://zenavo.app/zh-CN/blog/self-host-litellm)，可以把 Base URL 指向你的网关地址，用一个网关统一管理 OpenAI、Anthropic、Gemini、DeepSeek 等多家渠道和额度。若网关与 Open WebUI 在同一个 Zenavo 项目里，还可以直接走内网地址（例如 `http://new-api.zenavo.internal:3000/v1`）。
- **加上免费联网搜索与手机端入口**：想让模型检索实时网页，可以在同一个项目里添加自建的 [SearXNG 元搜索引擎](https://zenavo.app/zh-CN/blog/self-host-searxng)；想在 Telegram、Discord 或 Slack 里随时调用自己的 AI 助手，还可以搭配 [OpenClaw](https://zenavo.app/zh-CN/blog/self-host-openclaw)。

如果有多个成员共用，可以在管理员的模型设置里控制哪些模型对普通用户可见，避免大家误调昂贵的模型。

## 备份与升级

Open WebUI 的账号、聊天记录、知识库文件和后台连接设置都保存在 `/app/backend/data` 数据卷里。同时，服务 **变量** 里的 `WEBUI_SECRET_KEY` 用于保护会话，**部署后不要随意更改**，并建议复制一份存好。

在 open-webui 服务的 **备份与恢复** 中备份数据卷：

1. 选一个没人使用的维护窗口，停止项目（数据卷备份要求项目处于停止状态）。
2. 创建备份，完成后重新启动项目。
3. 下载一份备份自行保存。备份里包含聊天记录和填入的 API Key，请妥善保管。

操作细节见[备份与恢复](https://docs.zenavo.app/zh-CN/operations/backups)。升级前先备份数据卷，读完 Open WebUI 的[发行说明](https://github.com/open-webui/open-webui/releases)再修改镜像标签。大版本升级可能会迁移内部数据库结构，一旦升级出错，用升级前的备份恢复最稳妥。

## 常见问题

**保存连接后模型列表是空的？**
检查 Base URL 是否以服务商要求的路径结尾（多数 OpenAI 兼容接口需要带 `/v1`），以及 API Key 是否有效。有些兼容接口不支持列出模型接口（`/v1/models`），可以在连接设置里手动填写要用的模型 ID。

**调用模型时报 401 或 404？**
401 通常是 API Key 填错、过期或没有该模型权限；404 多半是 Base URL 多写了 `/chat/completions` 或漏写了 `/v1`。

**改了环境变量，重启后页面设置没变？**
Open WebUI 把许多管理端设置写入数据库后，数据库里的设置会优先于环境变量。需要调整时，直接在网页的 **管理员面板 → 设置** 里修改并保存。

**能接本地 Ollama 吗？**
可以，但模板默认设了 `ENABLE_OLLAMA_API=false`，避免没装 Ollama 时后台一直报错。如果你在同一项目或同一内网跑了 Ollama，把 `ENABLE_OLLAMA_API` 改为 `true` 并填写 `OLLAMA_BASE_URL` 即可。

从 [Open WebUI 模板](https://zenavo.app/deploy?template=open-webui)开始：先绑定域名、抢先注册管理员并收紧注册权限，再接入模型接口、安排好数据卷备份。
