docker-compose版本3无法识别运行时

lyr7nygr  于 2022-11-03  发布在  Docker
关注(0)|答案(2)|浏览(309)

我遇到了以下问题,构成文件

version: '3'

services:
  minkowski:
    build:
      context: .
      dockerfile: DockerfileGPU
    volumes:
      - "../:/app:rw"
      - "${DATA_PATH}:/app/data:rw"
    working_dir: /app
    tty: true
    stdin_open: true
    network_mode: "host"
    runtime: nvidia

导致

ERROR: The Compose file './docker/compose-gpu.yaml' is invalid because:
services.minkowski.build contains unsupported option: 'runtime'

我有20.10.21版的docker-compose和1.25.0版的docker-compose。你知道为什么会这样吗?
我尝试使用不同版本运行

sudo docker run --rm --gpus all nvidia/cuda:11.0.3-base-ubuntu20.04 nvidia-smi

工作良好

mnemlml8

mnemlml81#

runtime:选项在Compose file version 3中不受支持;更广泛地说,当前版本的Compose同时支持Compose文件版本2和3,使用其中任何一个都可以。版本3的选项更倾向于Swarm编排器,对于某些特定于单主机的选项,您需要使用版本2。

version: '2.4' # not 3.x
services:
  ...:
    runtime: nvidia

较新的Compose规范也支持runtime:,但是不同版本的Compose对runtime:的支持是不一致的。您提到的Compose 1.25.0将不支持它。这并不建议version:的特定值,如果您使用Compose规范的特定功能,我可能会将文件标记为version: '4.0'

rxztt3cl

rxztt3cl2#

我设法通过安装较新的docker compose解决了这个问题。使用docker compose 2. x,它工作得很好,没有进一步的变化

相关问题