1Panel 里的默认 Docker Compose 配置来看,已经加了 GPU 相关配置,但还缺关键参数,我帮你补全配置,确保 Ollama 能识别并使用 GPU:

问题分析

你的 Compose 里虽然加了reservations.devices的 GPU 配置,但缺少 Nvidia 驱动的环境变量,导致容器内 Ollama 无法正确加载 CUDA。

修正后的完整 Docker Compose 配置(直接在 1Panel 里编辑)

ollama服务下添加environment字段,补全 Nvidia 相关环境变量:

yaml

networks:
    1panel-network:
        external: true
services:
    ollama:
        container_name: ${CONTAINER_NAME}
        deploy:
            resources:
                limits:
                    cpus: ${CPUS}
                    memory: ${MEMORY_LIMIT}
                reservations:
                    devices:
                        - capabilities:
                            - gpu
                          count: all
                          driver: nvidia
        # 新增:添加Nvidia环境变量,让容器识别GPU
        environment:
            - NVIDIA_VISIBLE_DEVICES=all
            - NVIDIA_DRIVER_CAPABILITIES=compute,utility
        image: ollama/ollama:0.13.5
        labels:
            createdBy: Apps
        networks:
            - 1panel-network
        ports:
            - ${HOST_IP}:${PANEL_APP_PORT_HTTP}:11434
        restart: unless-stopped
        tty: true
        volumes:
            - ./data:/root/.ollama

操作步骤(在 1Panel 里执行)

  1. 打开 1Panel 中 Ollama 的 “参数配置” 页面(就是你截图的界面);
  2. 找到 “编辑 compose 文件” 区域,把上面补全后的配置替换进去;
  3. 点击 “确认”,1Panel 会自动重启 Ollama 容器;
  4. 重启后,查看 Ollama 日志验证 GPU 是否生效:

    bash

    运行

    # 在终端执行,查看容器日志
    docker logs -f 1Panel-ollama-1BQF
    

验证 GPU 生效的标志

日志中会出现类似内容(不再有 CUDA 初始化失败的提示):

plaintext

ggml_cuda_init: found 1 CUDA devices
ggml_cuda_init: using CUDA device 0 (NVIDIA GeForce RTX 3090)
offloaded 12/13 layers to GPU

关键说明

  • NVIDIA_VISIBLE_DEVICES=all:让容器能访问所有 GPU;
  • NVIDIA_DRIVER_CAPABILITIES=compute,utility:授予容器使用 GPU 计算的权限;
  • 前提:你的服务器已安装 Nvidia 驱动nvidia-container-toolkit(1Panel 提示里也提到了这一点)。

如果日志里还是提示 CUDA 初始化失败,可能是服务器没装nvidia-container-toolkit,可以执行以下命令安装(适用于 Ubuntu/Debian):

bash

运行

distribution=$(. /etc/os-release;echo $ID$VERSION_ID) \
   && curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | apt-key add - \
   && curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | tee /etc/apt/sources.list.d/nvidia-docker.list
apt-get update && apt-get install -y nvidia-container-toolkit
systemctl restart docker

安装完成后,重新启动 Ollama 容器即可生效。

Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐