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

Docker Compose无法调用GPU但docker run正常的问题咨询

问题原因与解决方案

核心原因

你在docker run命令里显式使用了--gpus all参数,这个参数会让Docker自动完成GPU相关的设备挂载、环境变量配置以及指定nvidia runtime,但你的Docker Compose配置里缺少对应开启GPU支持的配置项,导致容器无法访问GPU资源。而nvidia/cuda镜像能正常工作,是因为部分旧版本Docker环境中它会默认触发nvidia runtime,但这并非通用逻辑。

解决方案

根据你的Docker Compose版本,添加对应GPU配置:

方案1:Docker Compose v2.10+(推荐)

在服务配置中添加deploy.resources.reservations.devices字段,这是官方推荐的标准配置方式:

services:
  selenium-node:
    image: selenium/node-chrome:3.141.59
    deploy:
      resources:
        reservations:
          devices:
            - driver: nvidia
              count: all
              capabilities: [gpu]

方案2:旧版Docker Compose(v2.10以下)

如果你的Compose版本较低,直接指定runtime: nvidia即可:

services:
  selenium-node:
    image: selenium/node-chrome:3.141.59
    runtime: nvidia

验证步骤

启动容器后,执行以下命令进入容器测试:

docker-compose exec selenium-node nvidia-smi

若能正常输出GPU信息,说明配置生效。

额外注意事项

  • 执行docker compose version(或docker-compose version)查看版本,建议升级到最新版Docker Compose以获得更完善的GPU支持。
  • 区分旧版独立工具docker-compose与新版Docker CLI集成命令docker compose,新版推荐使用docker compose up启动服务。

内容的提问来源于stack exchange,提问作者Jordan Sim

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.15 03:55:20