3

安装nvidia-docker2

 3 years ago
source link: https://note.qidong.name/2018/11/install-nvidia-docker2/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

安装nvidia-docker2

2018-11-07 22:36:03 +08  字数:843  标签: Linux Docker

为什么要用nvidia-docker2?

一个浅显的原因是,nvidia-docker已经被官方废弃了。 最大的原因是,nvidia-docker作为Docker的一个包装,需要运行一个独立的daemon,与Docker的生态不能很好地兼容。 比如,docker-composedocker swarm与Kubernetes,都不能很好的和nvidia-docker一起工作。

nvidia-docker2解决了这些问题,甚至能在非官方CUDA镜像以外的镜像工作。 nvidia-docker是一个Volume Plugin,而nvidia-docker2则是一个Docker Runtime,机制的差异,带来了巨大的改进。

nvidia-gpu-docker

安装nvidia-docker2

Debian-based distributions

以下是基于Debian系的安装方法:

curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | \
  sudo apt-key add -
distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | \
  sudo tee /etc/apt/sources.list.d/nvidia-docker.list
sudo apt-get update

具体到Ubuntu 16.04来说,nvidia-docker.list就是如下内容:

deb https://nvidia.github.io/libnvidia-container/ubuntu16.04/$(ARCH) /
deb https://nvidia.github.io/nvidia-container-runtime/ubuntu16.04/$(ARCH) /
deb https://nvidia.github.io/nvidia-docker/ubuntu16.04/$(ARCH) /

RHEL-based distributions

distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.repo | \
  sudo tee /etc/yum.repos.d/nvidia-docker.repo

红帽系的,孤没用过,以上仅为官方样例。

配置nvidia-docker2

安装后,需要配置新的Docker Runtime。 同时,也需要把默认的Runtime设为nvidia

{
    "runtimes": {
        "nvidia": {
            "path": "nvidia-container-runtime",
            "runtimeArgs": []
        }
    },
    "default-runtime": "nvidia",
    ...
}

以上内容加入/etc/docker/daemon.json文件中,然后重启dockerd

sudo systemctl restart docker

对不需要GPU资源的应用来说,这样设了也不会有问题,除非它依赖另一个Runtime。 如果没有default-runtime的配置,在运行时添加一个参数--runtime,也能使容器可以访问GPU资源。

docker run --runtime nvidia ...

APT证书验证问题

某些公司的内网,环境及其恶劣,证书验证不一定能通过。 把一下一行添加到/etc/apt/apt.conf中,可以确保apt update时不出问题。

Acquire::https::nvidia.github.io::Verify-Peer "false";

参考



本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可,详见本站版权声明

本站没有任何支持评论功能的计划。 如果你对本站的设计、内容、观点有什么意见,欢迎来信指正。


作者:匿蟒 邮箱:[email protected] 备案:闽ICP备15022549号


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK