使用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 官方文档

相关推荐
一心09217 分钟前
ubuntu 20.04.6 sudo 源码包在线升级到1.9.17p1
运维·ubuntu·sudo·漏洞升级
好好学习啊天天向上19 分钟前
世上最全:ubuntu 上及天河超算上源码编译llvm遇到的坑,cmake,ninja完整过程
linux·运维·ubuntu·自动性能优化
你想考研啊1 小时前
三、jenkins使用tomcat部署项目
运维·tomcat·jenkins
代码老y1 小时前
Docker:容器化技术的基石与实践指南
运维·docker·容器
典学长编程2 小时前
Linux操作系统从入门到精通!第二天(命令行)
linux·运维·chrome
DuelCode2 小时前
Windows VMWare Centos Docker部署Springboot 应用实现文件上传返回文件http链接
java·spring boot·mysql·nginx·docker·centos·mybatis
你想考研啊4 小时前
四、jenkins自动构建和设置邮箱
运维·jenkins
Code blocks4 小时前
使用Jenkins完成springboot项目快速更新
java·运维·spring boot·后端·jenkins
饥饿的半导体5 小时前
Linux快速入门
linux·运维
杨浦老苏7 小时前
开源服务运行监控工具Lunalytics
docker·群晖·网站监控