简介:本文详细介绍在Windows系统下通过Docker与Ollama部署DeepSeek的完整步骤,涵盖环境配置、依赖安装、模型加载及WebUI交互全流程,帮助开发者快速搭建本地化AI推理环境。
DeepSeek本地部署需满足以下条件:
验证方法:通过任务管理器查看”性能”标签页,确认逻辑处理器数量及内存容量。使用命令
wmic cpu get feature检查AVX2支持。
执行以下命令测试容器运行:
docker run hello-world
正常应输出:
Hello from Docker! This message shows that your installation appears to be working correctly.
进入Docker设置→Resources→Advanced:
ollama --version# 应输出类似:ollama version 0.1.25
DeepSeek系列模型支持情况:
| 模型版本 | 参数规模 | 推荐硬件 |
|————-|————-|————-|
| deepseek-r1 | 1.5B/7B/33B | 8GB/16GB/64GB+ |
| deepseek-v2 | 7B/67B | 16GB/128GB+ |
拉取7B模型示例:
ollama pull deepseek-r1:7b
运行模型:
ollama run deepseek-r1:7b
首次运行会自动下载模型文件(约14GB)
创建自定义配置文件config.yml:
templates:prompt: "{{.Prompt}}\n### Response:"system: "You are DeepSeek, a helpful AI assistant."parameters:temperature: 0.7top_p: 0.9max_tokens: 2048
通过--config参数加载:
ollama run deepseek-r1:7b --config config.yml
git clone https://github.com/open-webui/open-webui.gitcd open-webui
npm install
修改.env文件:
OLLAMA_API_URL=http://localhost:11434MODEL=deepseek-r1:7b
启动服务:
npm run dev
默认访问地址:http://localhost:3000
使用Nginx配置HTTPS访问:
server {listen 443 ssl;server_name deepseek.example.com;ssl_certificate /path/to/cert.pem;ssl_certificate_key /path/to/key.pem;location / {proxy_pass http://localhost:3000;proxy_set_header Host $host;}}
--num-gpu参数限制GPU使用(如--num-gpu 1)
wsl -d docker-desktop -e sh -c "fallocate -l 16G /swapfile && chmod 600 /swapfile && mkswap /swapfile && swapon /swapfile"
q4_0/q4_1量化格式减少内存占用问题1:Ollama报错”Failed to pull model”
%APPDATA%\ollama\models问题2:WebUI无法连接Ollama
netstat -ano | findstr 11434
问题3:模型响应延迟高
max_tokens参数(建议512-1024)temperature值(0.3-0.7区间)创建models目录结构:
/models/deepseek-r1-7b/ollamamodel.binconfig.yml/deepseek-v2-67b/ollamamodel.binconfig.yml
通过环境变量切换:
set OLLAMA_MODELS=/path/to/modelsollama run deepseek-r1:7b
使用FastAPI封装Ollama:
from fastapi import FastAPIimport requestsapp = FastAPI()@app.post("/generate")async def generate(prompt: str):resp = requests.post("http://localhost:11434/api/generate",json={"model": "deepseek-r1:7b", "prompt": prompt})return resp.json()
配置Docker卷映射:
# docker-compose.yml示例services:webui:image: open-webui/open-webuivolumes:- ./data:/app/dataports:- "3000:3000"
--log-level debugdocker system prune -a清理旧镜像通过以上步骤,开发者可在Windows环境下构建完整的DeepSeek本地化部署方案,兼顾性能与易用性。实际部署时建议先在测试环境验证,再逐步迁移到生产环境。