Open WebUI 本地部署:一条 Docker 命令,把 AI 对话台搬进内网
【免费下载链接】open-webuiUser-friendly AI Interface (Supports Ollama, OpenAI API, ...)项目地址: https://gitcode.com/GitHub_Trending/op/open-webui
数据不能出内网?Open WebUI 本地部署帮你解决的就是这件事:它是一个自托管的 AI 对话界面,接上 Ollama 或 OpenAI 兼容接口,聊天记录、模型、文件全部留在你自己的机器上,不经过任何第三方云。
装之前,先确认它适不适合你
别急着敲命令,花一分钟对号入座:
- ✅ 你的数据不能出内网、不能进云 API:Open WebUI 本身只是界面,模型跑在哪你说了算,全部数据本地闭环。
- ✅ 机器能完全离线运行:配合
:ollama镜像,WebUI 和推理引擎装在一个容器里,断网照常工作。 - ⚠️ 你想要开箱即用的"云端 AI 体验":那它帮不上你。本地 CPU 跑 7B 模型一次回答要几十秒,指望流畅的云端手感,别装。
- ⚠️ 你只想白嫖一个聊天页面、不想碰服务器:这套部署面向有机器可管的团队或个人,纯 SaaS 用户直接看在线服务就行。
Docker 一条命令跑起 Open WebUI
先确认环境够不够。这条命令一次性检查 Docker 版本和可用内存,输出里docker version有版本号、free -h的可用内存不低于 4 GB,就能往下走:
docker --version && free -h推荐 Docker 安装而不是源码安装:源码装错一个环境变量就得从头再来,Docker 一条命令可控得多。下面这条命令拉取官方镜像并启动容器,把宿主机的 3000 端口映射到容器 8080,数据落到open-webui卷里:
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打开浏览器访问http://localhost:3000,看到聊天页面并能注册账号,就算成功了。注册的第一个账号自动成为管理员,后面所有配置都从它进后台操作。
界面里实际能干什么
让 AI 读你的文档。把合同或报告 PDF 拖进对话,它先做文件解析和分块索引,再按内容回答问题。回答能定位到出处,适合审查、总结这类任务,而不是泛泛闲聊。
同一问题,换模型对比。顶部切到 Ollama 上的本地模型跑一遍,再切到 OpenAI 兼容接口跑一遍,两边回答并排摆着。选型和验收模型时这个动作最值钱。
给同事开账号。管理后台里建用户、分模型权限,注册开关也可以关。WEBUI_AUTH默认开启认证,陌生人拿到端口地址也进不来。
从能用到好用:只改这三处
1. 数据持久化不改会怎样:容器一删,聊天记录、模型配置、上传文件全丢。 怎么设置:上面安装命令里的-v open-webui:/app/backend/data就是它。如果你用了别的命令,把这行补回去,然后重建容器。 改完怎么验证:重启一次容器,聊天记录还在,卷里能看到数据库文件。
docker restart open-webui2. 管理员密码不改会怎样:管理员账号靠首次注册产生,忘了注册顺序就可能没人有后台权限,只能清数据重来。 怎么设置:启动时注入WEBUI_ADMIN_PASSWORD环境变量,容器首次启动自动建管理员账号。
docker run -d -p 3000:8080 \ -e WEBUI_ADMIN_PASSWORD='你的强密码' \ -v open-webui:/app/backend/data \ --name open-webui --restart always \ ghcr.io/open-webui/open-webui:main改完怎么验证:用这个密码直接登录,能进管理后台。
3. 资源限制不改会怎样:WebUI 加上解析、索引、本地推理,能把内存吃光,同机其他服务跟着遭殃。 怎么设置:加--memory=8g --cpus=2,8 GB 和 2 核是 CPU 推理 7B 模型能跑顺手的底线,别给太低。 改完怎么验证:docker inspect open-webui里能看到 HostConfig 的 Memory 和 NanoCpus 字段;不重建容器也可以用docker update --memory=8g open-webui即时调整。
docker run -d -p 3000:8080 --memory=8g --cpus=2 \ -v open-webui:/app/backend/data \ --name open-webui --restart always \ ghcr.io/open-webui/open-webui:main踩坑速查
- 打开 3000 端口是别人的服务 → 宿主机 3000 被占了 → 把映射改成
-p 8080:8080,访问地址跟着变。 - 页面正常,Ollama 模型列表是空的 → 容器里的 127.0.0.1 是容器自己,不是你宿主机 → 命令里带上
--add-host=host.docker.internal:host-gateway,或改用--network=host。 - 升级镜像后聊天记录消失 → 新容器没挂原来的卷 → 确认
-v open-webui:/app/backend/data在不在,补上再重建。 - 连 Ollama 报 11434 拒绝连接 → Ollama 服务根本没在跑,跟 Open WebUI 无关 → 先启动 Ollama,再刷新模型列表。
下一步
今晚就把 3000 端口跑起来,建一个测试会话,传一份文档提问,再给同事开一个账号——三件事都通了,这套内网 AI 台就算正式上线了。
【免费下载链接】open-webuiUser-friendly AI Interface (Supports Ollama, OpenAI API, ...)项目地址: https://gitcode.com/GitHub_Trending/op/open-webui
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考