【Docker】Docker环境下快速部署Ollama与Open-WebUI:详细指南

Docker环境下快速部署Ollama与Open-WebUI:详细指南

在本篇文章中,我们将深入探讨如何在Docker中高效部署 OllamaOpen-WebUI,并解决在实际使用中常见的问题,确保你的模型服务稳定高效地运行。


一、Ollama 和 Open-WebUI 快速部署

1. 启动 Ollama

我们首先使用 Docker 运行 Ollama,确保它具备 GPU 加速功能:

bash 复制代码
docker run --name=ollama \
  --volume /home/user/.ollama:/root/.ollama \
  --network=bridge \
  -p 11434:11434 \
  --runtime=nvidia \
  --gpus all \
  --detach=true \
  ollama/ollama serve
  • --runtime=nvidia --gpus all:启用 GPU 加速(如果没有 GPU,可将其删除)。
  • --volume /home/user/.ollama:/root/.ollama:持久化数据存储在主机目录。
  • --network=bridge:设置为桥接模式,确保网络隔离。

2. 启动 Open-WebUI

接下来,我们部署 Open-WebUI:

bash 复制代码
docker run -d -p 3000:8080 \
  --add-host=host.docker.internal:host-gateway \
  -v open-webui:/app/backend/data \
  --name open-webui \
  --restart always \
  -e ENABLE_OPENAI_API=False \
  ghcr.io/open-webui/open-webui:main
  • -p 3000:8080:将容器端口 8080 映射到主机端口 3000。
  • -e ENABLE_OPENAI_API=False:关闭 OpenAI API(可根据需求开启)。
  • --restart always:确保 Open-WebUI 崩溃后自动重启。

二、Ollama 模型调用示例

在 Ollama 容器中,我们可以轻松运行模型:

bash 复制代码
docker exec -it ollama ollama run llama2
  • ollama run llama2 :指定调用的模型(此处为 llama2)。

三、常见错误与解决方法

错误一:忘记 Open-WebUI 账号密码

如果你忘记了 Open-WebUI 的账号密码,需清除数据:

bash 复制代码
docker volume rm open-webui

⚠️ 注意:这将清除所有数据,请谨慎操作!


错误二:模型版本不兼容

如果在尝试运行模型(如 Qwen3:32b)时,出现如下错误:

bash 复制代码
Error: pull model manifest: 412:
The model you are attempting to pull requires a newer version of Ollama.

这意味着 Ollama 版本已过期,无法兼容最新模型。

解决方法:升级 Ollama

1. 停止并删除旧版本容器
bash 复制代码
docker stop ollama
docker rm ollama
2. 拉取最新的 Ollama 镜像
bash 复制代码
docker pull ollama/ollama:latest
3. 使用最新版本启动 Ollama
bash 复制代码
docker run --name=ollama \
  --volume /home/user/.ollama:/root/.ollama \
  --network=bridge \
  -p 11434:11434 \
  --runtime=runc \
  --detach=true \
  ollama/ollama serve
4. 确保版本升级成功
bash 复制代码
docker exec -it ollama ollama --version
  • 输出最新版本号即表示升级成功。
5. 再次运行 Qwen3:32b 模型
bash 复制代码
docker exec -it ollama ollama run qwen3:32b

四、最佳实践:提高模型部署稳定性

  1. 始终保持 Ollama 和 Open-WebUI 镜像为最新版本

    bash 复制代码
    docker pull ollama/ollama:latest
    docker pull ghcr.io/open-webui/open-webui:main
  2. 使用持久化数据卷,防止数据丢失:

    bash 复制代码
    -v /home/user/.ollama:/root/.ollama
    -v open-webui:/app/backend/data
  3. 定期备份重要配置和模型文件


五、总结

本文详细讲解了如何在 Docker 环境中部署 Ollama 和 Open-WebUI,并分析了常见错误和解决方法。无论你是刚入门 Docker 还是已经有一定经验,这篇指南都能帮助你快速构建稳定的模型服务。

相关推荐
惊讶的猫1 天前
探究StringBuilder和StringBuffer的线程安全问题
java·开发语言
jmxwzy1 天前
Spring全家桶
java·spring·rpc
Halo_tjn1 天前
基于封装的专项 知识点
java·前端·python·算法
lightningyang1 天前
DVWA 在 openEuler 系统的安装部署
docker·渗透测试·openeuler·dvwa·天枢一体化虚拟仿真靶场平台
Fleshy数模1 天前
从数据获取到突破限制:Python爬虫进阶实战全攻略
java·开发语言
像少年啦飞驰点、1 天前
零基础入门 Spring Boot:从“Hello World”到可上线的 Web 应用全闭环指南
java·spring boot·web开发·编程入门·后端开发
苍煜1 天前
万字详解Maven打包策略:从基础插件到多模块实战
java·maven
有来技术1 天前
Spring Boot 4 + Vue3 企业级多租户 SaaS:从共享 Schema 架构到商业化套餐设计
java·vue.js·spring boot·后端
东东5161 天前
xxx医患档案管理系统
java·spring boot·vue·毕业设计·智慧城市
一个响当当的名号1 天前
lectrue9 索引并发控制
java·开发语言·数据库