使用docker中的ollama

假设容器名字为ollama-qihuang

进入容器,拉取deepseek-r1:7b模型:

复制代码
docker exec -it ollama-qihuang bash
ollama pull deepseek-r1:7b

Ollama 模型管理教程(容器名:ollama-qihuang)

一、拉取官方模型(以 llama2 为例)
bash 复制代码
# 进入Ollama容器的交互式Shell
docker exec -it ollama-qihuang bash

# 使用ollama CLI拉取官方模型(如llama2:7b)
ollama pull llama2:7b

# 退出容器
exit
二、验证官方模型是否成功拉取
bash 复制代码
# 查看所有已下载的模型
docker exec ollama-qihuang ollama list

# 预期输出(示例)
# NAME         TYPE     SIZE        MODIFIED
# llama2:7b    model    13.43 GB    2023-10-01 12:00:00

三、部署本地微调模型(以 deepseek-r1:7b-finetune 为例)

步骤 1:准备本地模型文件
  1. 将微调后的模型文件(通常为 GGML 格式)放入宿主机目录:

    bash 复制代码
    mkdir -p ~/qihuang/ollama/models/custom-models
    cp /path/to/your/finetuned-model.bin ~/qihuang/ollama/models/custom-models/deepseek-r1:7b-finetune.bin
步骤 2:重启容器以加载新模型
bash 复制代码
# 停止并重新启动容器(确保挂载路径正确)
docker restart ollama-qihuang

# 或重新创建容器(适用于首次部署)
docker run -d \
  --name ollama-qihuang \
  -p 9034:11434 \
  -v ~/qihuang/ollama/models:/models \  # 挂载包含微调模型的目录
  ollama/ollama:latest serve
步骤 3:通过 API 创建模型别名(可选)
bash 复制代码
curl -X POST http://localhost:9034/api/create \
  -H "Content-Type: application/json" \
  -d '{
    "name": "deepseek-r1:7b-finetune",
    "path": "/models/custom-models/deepseek-r1:7b-finetune.bin",
    "alias": "my-finetuned-model"
  }'

四、使用模型进行推理

1. 调用官方模型(llama2:7b)
bash 复制代码
curl http://localhost:9034/api/generate \
  -H "Content-Type: application/json" \
  -d '{
    "model": "llama2:7b",
    "prompt": "写一首关于秋天的诗",
    "temperature": 0.8
  }' | jq
2. 调用本地微调模型(deepseek-r1:7b-finetune)
bash 复制代码
curl http://localhost:9034/api/generate \
  -H "Content-Type: application/json" \
  -d '{
    "model": "deepseek-r1:7b-finetune",  # 或使用别名"my-finetuned-model"
    "prompt": "根据微调数据回答问题:xxx",
    "system": "你是一个专业的领域专家"
  }' | jq

五、模型管理常用命令

操作 命令示例
查看所有模型 docker exec ollama-qihuang ollama list
删除指定模型 docker exec ollama-qihuang ollama delete llama2:7b
查看模型详细信息 docker exec ollama-qihuang ollama info deepseek-r1:7b-finetune
列出正在运行的模型 docker exec ollama-qihuang ollama running

六、注意事项

  1. 模型路径映射

    确保宿主机目录~/qihuang/ollama/models与容器内路径/models正确挂载,否则无法识别本地模型。

  2. 模型格式要求

    Ollama 支持 GGML 格式(.bin文件),微调模型需转换为 Ollama 兼容的格式(可通过ollama convert命令处理)。

  3. 权限问题

    若出现权限不足,需确保宿主机目录对 Docker 用户可读:

    bash 复制代码
    chmod -R 755 ~/qihuang/ollama/models

七、进阶操作:量化模型以减少显存占用

bash 复制代码
# 进入容器创建4位量化模型
docker exec -it ollama-qihuang bash
ollama create deepseek-r1:7b-finetune-q4 -s deepseek-r1:7b-finetune -q q4_0
exit

# 使用量化模型推理
curl http://localhost:9034/api/generate -d '{
  "model": "deepseek-r1:7b-finetune-q4",
  "prompt": "量化模型测试"
}'

通过以上步骤,可快速管理 Ollama 的官方模型和自定义微调模型。如需调整容器端口或 GPU 配置,可参考Ollama 官方文档

相关推荐
哇哈哈&3 小时前
gcc9.2的离线安装,支持gcc++19及以上版本
linux·运维·服务器
一条咸鱼¥¥¥3 小时前
【运维经验】使用QQ邮箱SMTP服务器设置ssms计划任务完成时邮件发送
运维·服务器·经验分享·sql·sqlserver
【上下求索】3 小时前
学习笔记095——Ubuntu 安装 lrzsz 服务?
运维·笔记·学习·ubuntu
Caster_Z5 小时前
WinServer安装VM虚拟机运行Linux-(失败,云服务器不支持虚拟化)
linux·运维·服务器
小小测试开发5 小时前
提升WebUI自动化效率与性能:从脚本到架构的全链路优化指南
运维·架构·自动化
The star"'6 小时前
mysql(1-3)
运维·mysql·云计算
model20057 小时前
Alibaba linux 3安装LAMP(5)
linux·运维·服务器
一条懒鱼6667 小时前
K8S-特殊容器
云原生·容器·kubernetes
weixin_307779137 小时前
Jenkins中的Jakarta Activation API插件:功能、使用与最佳实践
运维·开发语言·ci/cd·自动化·jenkins
求梦8209 小时前
Java:Windows家庭中文版的Docker下载安装
java·windows·docker