Добавить поддельную среду выполнения nvidia в среду выполнения докеров

Как создать фальшивую nvidia среду выполнения в моей установке докера, чтобы я мог запускать docker-compose файлы, которые указывают runtime: nvidia на моем ноутбуке? Что-то, что делает docker --runtime=nvidia эквивалентным docker --runtime=runc?

Это позволило бы мне запускать контейнеры, предназначенные для использования с графическим процессором на моем ноутбуке. В настоящее время docker-compose файлы, в которых указана runtime: nvidia причина: ERROR: for toto Cannot create container for service toto: Unknown runtime specified nvidia.

PS: Я знаю, что это дрянно, но мне нужно протестировать контейнеры, не переписывая docker-compose.yaml и не имея, если возможно, нескольких файлов docker-compose.


person Arthur Woimbée    schedule 08.01.2021    source источник


Ответы (1)


Для этого мне нужно было добавить среду выполнения под названием nvidia, , как если бы у меня был графический процессор nvidia.. Но поскольку у меня нет docker-nvidia-runtime, мне нужно перенаправить на runc:

$ find / -name runc 2>/dev/null
/usr/bin/runc

Последняя команда:

$ sudo tee /etc/docker/daemon.json <<EOF
{
    "runtimes": {
        "nvidia": {
            "path": "/usr/bin/runc",
            "runtimeArgs": []
        }
    }
}
EOF
sudo pkill -SIGHUP dockerd
person Arthur Woimbée    schedule 12.01.2021