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

如何在docker-compose.yml中指定使用特定Nvidia GPU设备

在Docker Compose中指定特定ID的Nvidia GPU设备

当然可以指定特定ID的GPU设备,下面分两种场景给出配置方式:

1. Docker Swarm部署场景(对应你当前的deploy配置)

在现有配置基础上,添加device_ids字段,填入你需要的GPU ID即可(比如要使用ID为0和1的GPU):

deploy:
  resources:
    reservations:
      devices:
        - driver: nvidia
          capabilities: [gpu]
          device_ids: ["0", "1"]

配置完成后,容器内执行nvidia-smi只会显示指定的这两块GPU。

2. 单机非Swarm场景(直接用docker-compose up启动)

如果是单机环境,不用Swarm集群,有两种配置方式:

  • 方式一:通过环境变量指定
    services:
      你的服务名:
        # 其他配置(比如镜像、端口映射等)
        environment:
          - NVIDIA_VISIBLE_DEVICES=0,1
        deploy:
          resources:
            reservations:
              devices:
                - driver: nvidia
                  capabilities: [gpu]
    
  • 方式二:直接在设备预留中指定device_ids(部分新版本Docker支持)
    services:
      你的服务名:
        # 其他配置
        deploy:
          resources:
            reservations:
              devices:
                - driver: nvidia
                  capabilities: [gpu]
                  device_ids: ["0", "1"]
    

小贴士

宿主机上的GPU ID可以通过执行nvidia-smi命令查看,输出里GPU列的数字就是对应设备的ID。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.02 12:45:37