部署open webui 调用ollama启动的deepseek

以下是 部署Open WebUI并调用Ollama的deepseek-70b模型 的详细步骤,重点讲解部署和配置过程:


一、部署 Open WebUI

1. 安装Docker(如已安装可跳过)
bash 复制代码
# 自动安装Docker
curl -fsSL https://get.docker.com | sh
# 启动Docker服务
sudo systemctl start docker
sudo systemctl enable docker
2. 拉取Open WebUI镜像
bash 复制代码
docker pull ghcr.io/open-webui/open-webui:main
3. 启动Open WebUI容器
bash 复制代码
docker run -d \
  --name open-webui \
  -p 3000:8080 \                         # 映射容器8080端口到宿主机3000端口
  -v open-webui:/app/backend/data \       # 持久化存储用户数据
  --add-host=host.docker.internal:host-gateway \  # 允许容器访问宿主机网络
  -e OLLAMA_BASE_URL=http://host.docker.internal:11434 \  # 关键配置:指向Ollama服务
  ghcr.io/open-webui/open-webui:main
4. 验证部署
bash 复制代码
docker ps | grep open-webui  # 查看容器是否运行
curl http://localhost:3000   # 测试服务可达性

二、配置调用Ollama模型

1. 确保Ollama已运行
bash 复制代码
ollama serve &  # 后台运行Ollama服务
# 检查服务状态
curl http://localhost:11434/api/tags
2. 加载deepseek-70b模型
bash 复制代码
ollama pull deepseek-70b     # 如果尚未下载模型
ollama run deepseek-70b &   # 后台运行模型
3. Open WebUI界面配置
  1. 访问 http://localhost:3000
  2. 首次使用
    • 创建账号(建议关闭公共注册)
    • 登录后进入聊天界面
  3. 选择模型
    • 点击左下角模型选择框
    • 输入 deepseek-70b 搜索模型
    • 选择后即可开始对话

三、关键配置详解

1. Docker参数解析
参数 作用
-p 3000:8080 Web界面访问端口
-v open-webui:/app/backend/data 保存用户会话和设置
--add-host 容器内通过host.docker.internal访问宿主机
-e OLLAMA_BASE_URL 指定Ollama API地址
2. 跨容器通信原理
  • host.docker.internal 是Docker的特殊DNS名称,指向宿主机IP
  • 通过该地址访问宿主机的Ollama服务(默认端口11434)

四、常见问题解决

1. 模型未显示在列表中
bash 复制代码
# 检查Ollama服务是否运行
docker exec open-webui curl -s http://host.docker.internal:11434/api/tags

# 重启服务
docker restart open-webui
2. 性能优化配置
bash 复制代码
# 带GPU加速的启动命令(需安装NVIDIA驱动)
docker run -d \
  --gpus all \                # 启用GPU支持
  --shm-size=8g \            # 提升共享内存
  ...其他参数同上...
3. 自定义模型参数

在模型选择框输入时,可通过@符号指定参数:

复制代码
deepseek-70b @temperature=0.7 @seed=123

五、高级配置

1. 安全加固
bash 复制代码
# 禁用用户注册
docker run -e DISABLE_SIGNUP=true ...

# 设置管理员账号
docker run -e DEFAULT_ADMIN_EMAIL=admin@example.com ...
2. 使用HTTPS
bash 复制代码
# 添加SSL证书映射
-v /path/to/ssl:/app/backend/certs \
-e SSL_CERT_FILE=/app/backend/certs/fullchain.pem \
-e SSL_KEY_FILE=/app/backend/certs/privkey.pem \
3. 监控日志
bash 复制代码
docker logs -f open-webui  # 实时查看日志

完成以上步骤后,即可通过浏览器访问 http://localhost:3000 使用 deepseek-70b 模型。如果遇到网络问题,可尝试关闭防火墙:

bash 复制代码
sudo ufw disable  # 临时关闭防火墙(测试环境)
相关推荐
春人.24 分钟前
PortainerCE 跨云管理:cpolar 内网穿透服务实现多环境统一控制
云原生·eureka
tb_first2 小时前
k8sday11服务发现(2/2)
docker·云原生·容器·kubernetes·k8s
zxcxylong3 小时前
almalinux9.6系统:k8s可选组件安装(1)
云原生·容器·kubernetes·metrics·almalinux·hpa·vpa
君不见,青丝成雪5 小时前
大数据云原生是什么
大数据·云原生
熊出没9 小时前
微服务如何集成swagger3
微服务·云原生·架构
MANONGMN16 小时前
Kubernetes(K8s)常用命令全解析:从基础到进阶
云原生·容器·kubernetes
wdxylb19 小时前
云原生俱乐部-RH134知识点总结(1)
linux·云原生
天上掉下来个程小白21 小时前
微服务-02.认识微服务-单体架构
微服务·云原生·架构
nshkfhwr21 小时前
什么是微服务
微服务·云原生·架构·云计算·集群
forestsea21 小时前
微服务远程调用完全透传实现:响应式与非响应式解决方案
微服务·云原生·架构