相关疑难解决方法(0)

nvidia-docker :未知的运行时指定 nvidia

安装 docker-ce 后,我尝试安装 nvidia-docker。我按照这个:https : //github.com/NVIDIA/nvidia-docker安装 nvidia-docker。它似乎已正确安装。

我试着跑:

$ sudo docker run --runtime=nvidia --rm nvidia/cuda nvidia-smi
docker: Error response from daemon: Unknown runtime specified nvidia.
See 'docker run --help'.
Run Code Online (Sandbox Code Playgroud)

虽然,这有效(没有 --runtime=nvidia):

$ docker container run -ti ubuntu bash
Run Code Online (Sandbox Code Playgroud)

我的系统上的一些附加信息:它是一个带有 8 个 GPU(Titan Xp)和 nvidia 驱动程序版本 387.26 的 ubuntu 服务器 16.04。我可以在主机系统上运行 nvidia-smi -l 1 并且它按预期工作。

$ dpkg -l | grep -E '(nvidia|docker)'
ii  docker-ce                              18.06.1~ce~3-0~ubuntu                        amd64        Docker: the open-source application container engine
ii  libnvidia-container-tools              1.0.0-1                                      amd64        NVIDIA container runtime …
Run Code Online (Sandbox Code Playgroud)

docker nvidia-docker

15
推荐指数
3
解决办法
2万
查看次数

将 nvidia 运行时添加到 Windows WSL 上的 docker 运行时

我想将 nvidia 运行时添加到我的 docker 中。请注意,我正在运行 Windows 11。Windows 上的 Docker Desktop v.4.24.2 集成在 WSL 2 NVIDIA 驱动程序 545.84 上

我将所有内容安装为 nvidia-container-toolkit 并在运行 ubuntu 22.04 LTS 的 wsl 中我能够运行

docker run --gpus all --ipc=host --ulimit memlock=-1 --ulimit stack=67108864 -it --rm -v .:/app nvcr.io/nvidia/pytorch:22.07-py3
Run Code Online (Sandbox Code Playgroud)

它实际上为我的 GPU 加载了它需要的一切。我知道这一点是因为我能够在 jupyter 笔记本中执行

import torch
for i in range(torch.cuda.device_count()):
   print(torch.cuda.get_device_properties(i).name)
Run Code Online (Sandbox Code Playgroud)

它显示了我的 GPU (RTX 2080 SUPER)

但如果我想使用标志 --runtime=nvidia 它说

docker:来自守护进程的错误响应:未知或无效的运行时名称:nvidia。请参阅“docker run --help”。

我想在 docker compose 中使用它:

version: '3'
services:
  pytorch_container:
    image: nvcr.io/nvidia/pytorch:22.07-py3
    command: ["bash"]
    volumes:
      - .:/app
    runtime: …
Run Code Online (Sandbox Code Playgroud)

nvidia docker windows-subsystem-for-linux pytorch wsl-2

3
推荐指数
1
解决办法
780
查看次数