【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 小时前
Spring Boot 3.x AOT 编译实战:从原理、踩坑到生产落地
java·spring boot·后端
博傅2 小时前
Spring 核心原理
java·后端·spring
yurenpai(27届找实习中)2 小时前
从零读懂 AI 智能客服(一):模块职责与 SSE 聊天链路(后端架构)
java·人工智能·架构·langchain4j
陈皮波比茶2 小时前
Swagger
java
小闫BI设源码2 小时前
Elasticsearch面试必看:如何让客户端精准选择节点高效执行请求?
java·elasticsearch·面试宝典·深入解析
摇滚侠3 小时前
《SpringBoot 3:入门与应用实战》第 5 章 使用 Spring Boot 阅读笔记 9
java·spring boot·笔记
进阶的小名3 小时前
Spring AI 2.0 探索:多 OpenAI-Compatible 模型接入,以及下一代 Session 记忆管理
java·人工智能·后端·gpt·spring·ai·chatgpt
淼澄研学3 小时前
Proliferate开源框架技术解析与Docker部署实操
docker·容器·开源
yaoxin5211234 小时前
503. Java 反射 - 编写 ServiceFactory 类
java·开发语言·python
浪兎兎4 小时前
Docker 容器技术笔记
笔记·docker·容器