Ollama + Open WebUI 本地部署DeepSeek

文章目录


前言

由于官网的deepseek经常问一个问题回答后经常处于繁忙状态,所以为了避免这种情况我们可以自己在本地部署个deepseek进行使用,我们可以本地使用Ollama和Open WebUI部署DeepSeek模型。deepseek模型有多个版本,相应对配置要求也不一样,要想获得最好的体验,这需要非常高的配置。


一、环境准备

最低系统要求

组件 要求
操作系统 Windows 10/11, macOS 12+, Ubuntu 20.04+
处理器 支持 AVX2 的 x86_64 CPU(Intel/AMD)
内存 16GB(7B 模型) / 32GB+(更大模型)
存储 至少 50GB 可用空间
GPU(可选) NVIDIA GPU(需 CUDA 11+)

必要软件

  1. Docker Desktop
    官方下载地址

    安装后需启用 Linux 容器(Windows)并分配至少 8GB 内存

  2. Git (可选)

    用于克隆 Open WebUI 仓库:

    bash 复制代码
    sudo apt install git  # Ubuntu
    brew install git     # macOS

二、安装 Ollama

通过 Docker 部署

bash 复制代码
# 创建持久化存储卷
docker volume create ollama_data

# 启动 Ollama 容器
docker run -d \
  --name ollama \
  -p 11434:11434 \
  -v ollama_data:/root/.ollama \
  --restart unless-stopped \
  ollama/ollama

验证安装

bash 复制代码
docker logs ollama | grep "Listening"
# 应显示:Listening on [::]:11434

三、部署 Open WebUI

快速启动

bash 复制代码
docker run -d \
  --name open-webui \
  -p 3000:8080 \
  -e OLLAMA_API_BASE_URL=http://host.docker.internal:11434 \
  -v open-webui:/app/backend/data \
  --restart unless-stopped \
  ghcr.io/open-webui/open-webui:main

配置说明

  • OLLAMA_API_BASE_URL: Ollama 服务的地址
  • -v open-webui:/app/backend/data: 持久化聊天记录和用户数据
  • 访问地址:http://localhost:3000

四、加载 DeepSeek 模型

通过 Ollama 拉取模型

bash 复制代码
# 查看可用模型
curl http://localhost:11434/api/tags

# 拉取 DeepSeek 模型(示例)
docker exec ollama ollama pull deepseek-ai/deepseek-math-7b-base

支持模型列表

模型名称 大小 推荐配置
deepseek-7b 13GB 16GB RAM
deepseek-math-7b 13GB 16GB RAM
deepseek-coder-7b 13GB 16GB RAM

五、使用 Web 界面交互

首次使用

  1. 访问 http://localhost:3000
  2. 创建账户(首次会自动注册管理员账户)
  3. 在模型选择栏选择已加载的 DeepSeek 模型

功能特性

  • 对话模式:支持多轮上下文对话

  • 参数调整

    yaml 复制代码
    temperature: 0.7  # 控制随机性 (0-1)
    top_p: 0.9        # 输出多样性
    max_tokens: 2048  # 最大生成长度
  • 文件上传:支持 PDF/TXT 文件分析

  • 提示词库:内置常用提示模板


六、高级配置

GPU 加速(NVIDIA)

bash 复制代码
# 先安装 NVIDIA 容器工具包
distribution=$(. /etc/os-release;echo $ID$VERSION_ID) \
  && curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg \
  && curl -s -L https://nvidia.github.io/libnvidia-container/$distribution/libnvidia-container.list | \
    sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' | \
    sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list

# 重启容器时添加 GPU 支持
docker run --gpus all -d ... ollama/ollama

多模型管理

bash 复制代码
# 查看已下载模型
docker exec ollama ollama list

# 删除模型
docker exec ollama ollama rm deepseek-7b

七、常见问题

模型加载失败

现象Error: insufficient memory
解决

  1. 调整 Docker 内存限制至 16GB+

  2. 使用量化模型(添加 -q4 后缀):

    bash 复制代码
    ollama pull deepseek-7b-q4_0

WebUI 无法连接 Ollama

  1. 检查容器网络:

    bash 复制代码
    docker network inspect bridge
  2. 测试 API 连通性:

    bash 复制代码
    curl http://host.docker.internal:11434/api/tags

八、安全建议

  1. 身份验证

    在 Open WebUI 的启动命令中添加:

    bash 复制代码
    -e WEBUI_SECRET_KEY=your_secure_key
  2. 网络隔离

    使用自定义 Docker 网络:

    bash 复制代码
    docker network create ai-net
    docker run --network ai-net ... ollama/ollama
    docker run --network ai-net ... open-webui
  3. 防火墙规则

    仅允许本地访问:

    bash 复制代码
    ufw allow from 127.0.0.1 to any port 3000

总结

通过本教程,您已经实现了:

  1. 基于 Docker 的 Ollama 服务部署
  2. Open WebUI 可视化界面搭建
  3. DeepSeek 系列模型的加载与测试

扩展建议

  • 结合 LangChain 构建复杂 AI 应用
  • 使用 NGINX 添加 HTTPS 支持
  • 配置定时模型更新任务(需修改 Ollama 容器)

如需更新 Open WebUI,运行:

bash 复制代码
docker compose pull open-webui && docker compose up -d

官方文档参考 | Ollama 模型库

相关推荐
ywyy679819 分钟前
短剧系统开发定制全流程解析:从需求分析到上线的专业指南
大数据·需求分析·短剧·推客系统·推客小程序·短剧系统开发·海外短剧系统开发
暗影八度2 小时前
Spark流水线数据质量检查组件
大数据·分布式·spark
白鲸开源3 小时前
Linux 基金会报告解读:开源 AI 重塑经济格局,有人失业,有人涨薪!
大数据
海豚调度3 小时前
Linux 基金会报告解读:开源 AI 重塑经济格局,有人失业,有人涨薪!
大数据·人工智能·ai·开源
白鲸开源3 小时前
DolphinScheduler+Sqoop 入门避坑:一文搞定数据同步常见异常
大数据
令狐少侠20113 小时前
ai之RAG本地知识库--基于OCR和文本解析器的新一代RAG引擎:RAGFlow 认识和源码剖析
人工智能·ai
学术小八4 小时前
第二届云计算与大数据国际学术会议(ICCBD 2025)
大数据·云计算
求职小程序华东同舟求职4 小时前
龙旗科技社招校招入职测评25年北森笔试测评题库答题攻略
大数据·人工智能·科技
二二孚日5 小时前
自用华为ICT云赛道Big Data第六章知识点-分布式搜索服务ElasticSearch
大数据·华为
小屁妞7 小时前
Spring AI Alibaba智能测试用例生成
ai·测试用例生成·ai生成测试用例