当前位置: 首页 > article >正文

【AI】Docker中快速部署Ollama并安装DeepSeek-R1模型: 一步步指南

【AI】Docker中快速部署Ollama并安装DeepSeek-R1模型: 一步步指南

一、前言

为了确保在 Docker 环境中顺利安装并高效运行 Ollama 以及 DeepSeek 离线模型,本文将详细介绍整个过程,涵盖从基础安装到优化配置等各个方面。通过对关键参数和配置的深入理解,您可以更好地掌控资源使用、保障数据安全以及提升整体性能。

二、环境要求

在开始之前,请确认以下环境需求:

  1. Docker 安装:确保 Docker 已正确安装并能够正常运行容器。

  2. GPU 支持:推荐使用支持 NVIDIA GPU 的环境,以提高模型推理速度。

  3. 网络连接:部分步骤需要访问互联网以下载镜像或模型文件。

  4. 存储空间:DeepSeek 模型文件较大,确保有足够的磁盘空间。

  5. DeepSeek模型:DeepSeek-R1版本的硬件需求和适用场景:

    模型版本CPU需求内存需求硬盘需求显卡需求适用场景
    1.5B最低 4 核8GB+3GB+非必需(纯 CPU 推理),若 GPU 加速可选 4GB+ 显存(如 GTX 1650)低资源设备部署(如树莓派、旧款笔记本)
    实时文本生成(聊天机器人、简单问答)
    嵌入式系统或物联网设备
    7B8 核以上(推荐现代多核 CPU)16GB+8GB+8GB显存(如RTX 3070/4060)本地开发测试(中小型企业)
    中等复杂度NLP任务(文本摘要、翻译)
    轻量级多轮对话系统
    8B与7B相近,略高10%-20%与7B相近,略高10%-20%-与7B相近,略高10%-20%需更高精度的轻量级任务(如代码生成、逻辑推理)
    14B12核以上32GB+15GB+16GB显存(如RTX 4090或A5000)企业级复杂任务(合同分析、报告生成)
    长文本理解与生成(书籍/论文辅助写作)
    32B16核以上(如AMD Ryzen 9或Intel i9)64GB+30GB+24GB显存(如A100 40GB或双卡RTX 3090)高精度专业领域任务(医疗/法律咨询)
    多模态任务预处理(需结合其他框架)
    70B32核以上(服务器级CPU)128GB+70GB+多卡并行(如2x A100 80GB或4x RTX 4090)科研机构/大型企业(金融预测、大规模数据分析)
    高复杂度生成任务(创意写作、算法设计)
    671B64核以上(服务器集群)512GB+300GB+多节点分布式训练(如8x A100/H100)国家级/超大规模AI研究(如气候建模、基因组分析)
    通用人工智能(AGI)探索

三、Ollama 容器详细安装与配置

1. 运行ollama容器

docker run -d --name ollama \
  --gpus=all \
  --oom-kill-disable \ # 防止因内存不足导致容器被杀死
  -m 8g \              # 为容器分配4GB内存(可根据需要调整)
  -c 2 \               # 分配2个CPU核心(可根据需要调整)
  -p 11434:11434 \
  -v /path/to/ollama/config:/root/.ollama/config \
  -v /path/to/ollama/models:/root/.ollama/models \
  -v /path/to/ollama/logs:/root/.ollama/logs \
  -e OLLAMA_ORIGINS="*"
  -e OLLAMA_PORT=11434 \
  -e OLLAMA_HOST=0.0.0.0 \
  -e OLLAMA_ORIGINS="http://localhost,http://your-domain.com" \
  -e LOG_LEVEL=INFO \
  ollama/ollama:latest

参数详解:

  • --gpus=all:允许容器使用主机上的所有可用的GPU资源,以加速DeepSeek模型的推理。
  • --oom-kill-disable:防止在内存不足导致容器被杀死,这对于长时间运行或处理大型任务尤为重要。
  • -m 8g:为容器分配4GB(示例值)的内存。根据您的可用资源和DeepSeek模型的大小进行适当调整,较大的模型可能需要更多内存。
  • -c 2:分配2个CPU核心,如果模型推理主要依赖于CPU,这能确保容器获得足够的计算能力。
  • -p 11434:11434:将主机的11434端口映射到容器内的11434端口,方便外部访问Ollama服务。
  • 卷挂载(Volumes)
    • /path/to/ollama/config:/root/.ollama/config:将配置文件目录挂载到主机对应位置,确保配置持久化,不会因容器重启或删除而丢失。
    • /path/to/ollama/models:/root/.ollama/models:模型文件持久化存储在主机上,避免每次下载并节省时间。
    • /path/to/ollama/logs:/root/.ollama/logs:日志文件持久保存,便于长期监控和故障排查。
  • 环境变量(Environment Variables)
    • OLLAMA_ORIGINS="*":允许所有来源访问 Ollama API。
    • OLLAMA_PORT=11434:指定Ollama服务监听的端口号,需与映射端口一致。
    • OLLAMA_HOST=0.0.0.0:允许容器内服务绑定到所有网络接口,这样可以在不同主机和网络环境下访问。
    • OLLAMA_ORIGINS="http://localhost,http://your-domain.com":设置可信的请求来源,提升安全性,防止CSRF攻击。请将your-domain.com替换为实际使用域名或IP地址。
    • LOG_LEVEL=INFO:调整日志输出级别,便于监控和调试。

2. 进入ollama

# 进入ollama容器
docker exec -it ollama /bin/bash
# 查看帮助
ollama --help

在这里插入图片描述

四、Deepseek模型部署与运行

1. 下载运行模型

ollama pull deepseek-r1:7b

在这里插入图片描述

2. 运行deepseek模型

ollama run deepseek-r1:7b

在这里插入图片描述

3. 测试是否成功

# ollama访问IP和端口
curl http://localhost:11434/api/generate -d '{
  "model": "deepseek-r1:70b",
  "prompt":"你好"
}'

在这里插入图片描述

五、Cherry Studio交互界面

1. 下载Cherry Studio

Cherry Studio

在这里插入图片描述

2. 配置Deepseek模型

在这里插入图片描述

3. 使用

在这里插入图片描述


http://www.kler.cn/a/549305.html

相关文章:

  • Redis基础——1、Linux下安装Redis(超详细)
  • MyBatis映射文件常用元素详解与示例
  • Flutter 常见布局模型
  • 【LeetCode】LCR 120. 寻找文件副本
  • 使用 pgvector 实现 PostgreSQL 语义搜索和 RAG:完整指南
  • DeepSeek R1 与 OpenAI O1:机器学习模型的巅峰对决
  • 关于防火墙运维面试题2
  • Unity3D 可视化脚本框架设计详解
  • Linux搭建ESP32开发环境
  • 线性代数中的正交和标准正交向量
  • DeepSeek 的开源优势:为什么选择它而不是其他闭源模型?
  • Spring Boot “约定大于配置”
  • 网络安全的现状如何?
  • Keepalived + Nginx 高可用负载均衡部署
  • 低代码组态软件-BY组态
  • nodejs 038: Js Worker线程消息传递 Worker.postMessage() Worker.postMessage()
  • 图像生成GAN和风格迁移
  • mysql读写分离与proxysql的结合
  • FOT(Forest-of-Thought):增强大型语言模型推理能力的新框架
  • Docker安装Kafka(不依赖ZooKeeper)