You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在创建Ollama Docker容器时自动拉取指定模型?

自动在Ollama Docker容器中加载指定模型的解决方案

你遇到的问题是Ollama容器启动后未自动拉取llama3模型,导致其他服务调用时提示模型不存在。下面提供三种自动化部署时自动加载模型的方法:

方法一:在docker-compose.yml中添加启动命令

直接在容器配置里指定启动后先拉取模型,再启动Ollama服务。修改后的docker-compose.yml如下:

ollama:
    image: ollama/ollama:latest
    ports:
        - 11434:11434
    volumes:
        - ./ollama/ollama:/root/.ollama
    container_name: ollama
    pull_policy: always
    tty: true
    restart: always
    command: ["sh", "-c", "ollama pull llama3 && ollama serve"]

容器启动时会优先执行ollama pull llama3,如果模型已经存在(挂载目录里有之前拉取的文件),会直接跳过拉取步骤,启动服务。

方法二:预下载模型到本地挂载目录

如果不想每次启动容器都等待模型拉取,可以提前在本地准备好模型文件:

  • 本地安装Ollama后执行ollama pull llama3
  • 找到本地Ollama的存储目录(默认是~/.ollama),将其中的models文件夹复制到docker-compose配置的./ollama/ollama目录下
  • 启动容器后,会直接读取本地已有的模型文件,无需再拉取

方法三:构建预包含模型的自定义镜像

如果需要频繁部署,可构建一个自带llama3模型的Ollama镜像:

  1. 新建Dockerfile,内容如下:
FROM ollama/ollama:latest

RUN ollama pull llama3

CMD ["ollama", "serve"]
  1. 修改docker-compose.yml使用自定义镜像:
ollama:
    build: .
    ports:
        - 11434:11434
    volumes:
        - ./ollama/ollama:/root/.ollama
    container_name: ollama
    pull_policy: always
    tty: true
    restart: always

构建镜像时会把模型打包进去,后续启动容器直接就能使用模型。

内容的提问来源于stack exchange,提问作者Sir hennihau

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.23 17:23:13