
OpenWebUI部署实战:143K星团队AI平台
去年公司采购了5个ChatGPT Plus订阅、3个Claude Pro、还有零零散散的API Key。月底对账,行政问我"这些是什么"——我花了40分钟逐条解释。后来部署了OpenWebUI+一个灿海星图Key,全公司20个人用,账单一目了然。
本文是一篇实操指南,预计25分钟了解全貌、15分钟完成部署。
核心操作
这是什么
OpenWebUI 是自托管的团队 AI 工作平台,GitHub 143K 星。部署在你的服务器上,全团队通过浏览器访问。
做得到:文本对话、DALL-E/ComfyUI画图、语音输入输出、视频通话、RAG文档问答(上传PDF/Word/文档直接问)、联网搜索、多人协作(按角色分权限)、Agent(模型+工具+知识库)、接本地Ollama模型。
做不到:生成PPT/Excel/Word文件。
关于Ollama:OpenWebUI不需要Ollama。你完全可以只用云端API,Docker一行就跑起来。Ollama只是可选项——需要隐私或离线才装。
三种部署方式
方式一:纯云端API(推荐)
docker run -d -p 3000:8080 \
-e OPENAI_API_KEY="你的灿海星图Key" \
-e OPENAI_API_BASE_URL="https://www.lumaocean.com/v1" \
-v open-webui:/app/backend/data \
--name open-webui \
--restart always \
ghcr.io/open-webui/open-webui:main
方式二:pip安装(没Docker用这个)
pip install open-webui
open-webui serve
需要Python 3.11,访问 http://localhost:8080。
方式三:接本地Ollama
docker run -d -p 3000:8080 \
--add-host=host.docker.internal:host-gateway \
-v open-webui:/app/backend/data \
--name open-webui \
--restart always \
ghcr.io/open-webui/open-webui:main
然后在设置里填 Ollama 地址 http://host.docker.internal:11434。
接入灿海星图
打开 http://你的IP:3000 → 首次注册即管理员 → 管理员面板 → 设置 → 外部连接 → 填入 API 地址和 Key → 保存。100+模型自动出现在选择器里。
切模型:填了 API 地址就用云端,不填就用本地 Ollama,实时生效,不需要重装。
核心功能一览
- 对话:同时问三个模型对比回答
- RAG文档问答:上传文件到知识库,对话中用
#文件名引用,9种向量库后端可选 - 画图:接 DALL-E / ComfyUI / AUTOMATIC1111
- 语音:十几款 STT+TTS 引擎
- 团队协作:按角色分权限、设置用户配额
- Agent和插件:Filters/Actions/Pipes/Tools/Skills 五种扩展,支持MCP协议
三个踩坑
- Docker启动后502:首次启动初始化1-3分钟,等。
docker logs open-webui -f看状态。 - 配好API但模型列表为空:API地址必须以
/v1结尾。浏览器直接访问你的地址/v1/models验证。 - 重启后数据全丢:启动时忘了
-v open-webui:/app/backend/data。重建容器时加上。
适合什么场景
小团队(3-20人)需要一个共享的AI入口,不用每人注册充值管Key。一个OpenWebUI部署+一个灿海星图Key=全团队同时用。
不适合:你只需要一个人用ChatGPT(直接用)、你需要生成PPT(用PPT-Master)、你需要写代码(直接用Cursor/Claude Code)。
常见疑问
Q1:pip安装和Docker安装哪个更稳?
Docker是官方推荐方式,自带沙箱隔离,升级只需 docker pull 新镜像重建容器,数据在数据卷里不动。pip方式不需要Docker但依赖直接跑在宿主机上,生产环境选Docker。
Q2:切到灿海星图API后原来的聊天记录和知识库还在吗?
全部在。聊天记录、知识库、用户账号存在数据卷里,跟模型无关。模型选择器会同时出现Ollama本地模型和灿海星图云端模型,想用哪个切哪个。
Q3:团队有人把Key截图发群里了怎么办?
立刻吊销被泄露的Key,在灿海星图后台新生成一个,更新到OpenWebUI的API连接设置。不需要全员换——OpenWebUI是服务端统一用一个Key代理所有用户请求,用户端根本看不到Key。
我为什么不用ChatGPT直接代替
ChatGPT是个人工具,OpenWebUI是团队平台。三个区别:(1) 权限控制——管理员可以限制谁用哪些模型、设每人配额;(2) 模型灵活性——不是被绑在GPT上,可以同时用Claude、DeepSeek、本地模型,一个界面切换;(3) 成本透明——一个API Key的账单,一个人管,不用跟5个AI服务商分别结算。