近期,DeepSeek凭借其高效的中文理解能力引爆AI社区,而Open-WebUI作为最受欢迎的可视化交互工具,二者结合成为本地部署的黄金组合。本文将详解Linux/Windows双环境下的部署方案,涵盖Docker与非Docker模式,助你快速搭建私有化AI平台!
Open WebUI 是一款专为大型语言模型(LLM)设计的 开源可视化交互框架,它通过简洁的Web界面,让用户无需编写代码即可与本地部署的AI模型/各大服务商提供大模型API(如DeepSeek、Llama、ChatGLM等)进行自然对话。其核心使命是 “让LLM私有化部署像打开浏览器一样简单” ,尤其适合需要快速搭建企业级AI平台或追求数据隐私的开发者。
- 零代码模型接入:支持通过API一键连接HuggingFace、Ollama、vLLM等主流模型服务,无需手动处理HTTP请求。
- 类ChatGPT交互体验:提供多轮对话历史管理、Markdown渲染、代码高亮、文件上传等生产力功能。
- 插件化扩展系统:支持RAG(检索增强生成)、知识库对接、语音输入等插件,扩展AI能力边界。
- ️ ️私有化部署保障:所有数据运行在本地服务器,规避云端服务的隐私泄露风险。
- 开发者测试:快速验证模型效果,无需搭建完整前后端。
- 企业私有化:金融、医疗等敏感行业构建合规AI助手。
- 教育科研:低成本部署教学实验平台,支持多学生并发。
- ️ ️个人极客:在家庭NAS或旧电脑运行个人AI大脑。
| 硬件类型 | 最低配置 | 推荐配置 | 核心作用 |
|---|---|---|---|
| CPU | 4核 | 8核及以上 | 支持基础模型推理与并发请求 |
| 内存 | 4GB | 16GB+ | 保障大模型加载与多任务流畅运行 |
| 磁盘 | 20GB | 100GB+ SSD | 存储模型文件、日志及缓存数据 |
| GPU | 非必需 | NVIDIA RTX 3090+ | 加速模型推理(需CUDA支持) |
Open-WebUI文档库
Open-WebUI官方 GitHub 源代码仓库
如果你已安装Docker服务,跳到下一步;如果没有安装,参考这篇文章
注: 这里说明下,Ollama 是在本地部署大模型的工具
- 因我们是使用Ollama进行本地大模型的部署,所以对于不同的Ollama环境,我们的部署方式也是不同的。
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.nju.edu.cn/open-webui/open-webui:main
- Ollama 在其他服务器上, 请使用以下命令:
注: 将参数中 OLLAMA_BASE_URL 的值替换为部署了Ollama服务器的URL
docker run -d -p 3000:8080 -e OLLAMA_BASE_URL=https://example.com -v open-webui:/app/backend/data –name open-webui –restart always ghcr.nju.edu.cn/open-webui/open-webui:main
- 如果选择不使用Ollama部署的本地大模型,完全采用调用各大服务商提供的大模型API,请使用以下命令:
docker run -d -p 3000:8080 -v open-webui:/app/backend/data –name open-webui –restart always ghcr.nju.edu.cn/open-webui/open-webui:main
- 如果想使用 Ollama 但服务器上又没部署 Ollama,可以使用捆绑 Ollama 支持的 Open-WebUI,请使用以下命令:
注: 此命令会将 Ollama 与 Open-WebUI 部署在同一个容器内,后续要使用 Ollama 部署本地大模型,就需要去容器内操作
docker run -d -p 3000:8080 -v ollama:/root/.ollama -v open-webui:/app/backend/data –name open-webui –restart always ghcr.nju.edu.cn/open-webui/open-webui:ollama
- docker-compose部署
在服务器的任意位置新建一个 docker-compose.yaml 文件,复制下面脚本到文件中
services: ollama:
volumes: - ollama:/root/.ollama container_name: ollama pull_policy: always tty: true restart: unless-stopped image: swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/ollama/ollama:latest
open-webui:
build: context: . args: OLLAMA_BASE_URL: '/ollama' dockerfile: Dockerfile image: ghcr.nju.edu.cn/open-webui/open-webui:main container_name: open-webui volumes: - open-webui:/app/backend/data depends_on: - ollama ports: - 3000:8080 environment: - 'OLLAMA_BASE_URL=http://ollama:11434' - 'WEBUI_SECRET_KEY=' extra_hosts: - host.docker.internal:host-gateway restart: unless-stopped
volumes: ollama: {} open-webui: {}
在 docker-compose.yaml 文件所在目录,执行以下命令以创建并后台启动所有容器
docker compose up -d
- 安装uv
curl -LsSf https://astral.sh/uv/install.sh | sh
- 运行Open-WebUI
DATA_DIR=~/.open-webui uvx –python 3.11 open-webui@latest serve
- 安装python 参考这篇文章
注: python推荐版本为3.11.x,官方有说明
- 安装Open-WebUI
pip install open-webui
- 启动Open-WebUI
open-webui serve
博主采用的是“捆绑 Ollama 支持的 Open-WebUI”部署方式,执行命令后的效果为
下载完后,我们执行 docker ps 命令
可以看到,容器成功启动,并且是健康状态;此时我们就可以访问 http://服务器ip:3000 进行聊天啦
注: Window系统的Dokcer部署Open-WebUI与Linux的Docker部署Open-WebUI方式是一模一样的,区别在于安装Docker服务有所不同的,我这里贴一下Windows安装Docker服务的参考文章,其他操作同3.1.2
- 安装python:参考这篇文章
注: python推荐版本为3.11.x,官方有说明
- 安装nodejs:参考这篇文章
注: nodejs推荐版本为22.x.x,官方有说明
- 安装git 参考这篇文章
- 在任意位置执行以下命令,拉取Open-WebUI源码
git clone https://github.com/open-webui/open-webui.git
拉取完的效果如下:
- 在项目根目录下,执行以下命令,安装前端依赖
npm install
执行效果如下:
- 然后执行以下命令,构建前端资源
npm run build
执行效果如下:
当出现 done 时,表示构建成功;如果失败,删除项目根目录下的node_modules后,多试几次这两个命令
- 执行以下命令,到后端资源文件目录下
cd backend
执行效果如下:
- 然后执行以下命令,安装后端依赖
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple -r requirements.txt
执行效果如下:
- 执行以下命令,启动服务
.\start_windows.bat
当出现 Open-WebUI图形时,表示启动完成
这个时候我们可以访问 http://localhost:8080 进行聊天啦
- 作为开发者,我就不多赘述了,自行安装啦
- 打开项目根目录下的backend目录,打开效果如下:
- 选择FastAPI
- Application file 选择 backend\open_webui\main.py 文件,Application name 填写 app
- 直接启动
- 启动完成后,我们可以通过 http://localhost:8000 来访问页面,然后就可以愉快的Debug了
当 Open-WebUI 目前版本满足不了我们的实际需求时,我们就需要对 Open-WebUI 项目进行二次开发;开发完后,对于Windows 本地项目是可以重启直接生效的,但 Docker 项目如何生效?
我们进入 Open-WebUI 容器内部,仔细观察会发现,主要是两个文件夹起作用(backend、build)
所以,我们只需要在 Windows 本地通过前面的命令 npm run build 将前端构建的资源包 build 和修改后的 backend 后端资源包,复制进容器,然后重启容器就可以生效了
通过本文,读者可依据实际需求灵活选择部署方案,构建稳定、高效的AI交互环境。无论是追求效率的运维人员,还是热衷定制的开发者,均可从中获得可复用的实践经验。立即行动,开启您的私有化AI之旅吧!
下篇文章将详细介绍 Open-WebUI 各种配置的使用场景和规则,敬请期待!!!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/218658.html