ubuntu安装nvidia-container-runtime

借助 NVIDIA Container Runtime,开发人员只需在创建容器期间注册一个新的运行时,即可将 NVIDIA GPU 暴露给容器中的应用程序。

目前官网上NVIDIA Container Runtime介绍如下

NVIDIA Container Runtime is a GPU aware container runtime, compatible with the Open Containers Initiative (OCI) specification used by Docker, CRI-O, and other popular container technologies. It simplifies the process of building and deploying containerized GPU-accelerated applications to desktop, cloud or data centers.

NVIDIA Container Runtime 是一种 GPU 感知容器运行时,与 Docker、CRI-O 和其他流行容器技术使用的 Open Containers Initiative (OCI) 规范兼容。 它简化了构建容器化 GPU 加速应用程序并将其部署到桌面、云或数据中心的过程。

With NVIDIA Container Runtime supported container technologies like Docker, developers can wrap their GPU-accelerated applications along with its dependencies into a single package that is guaranteed to deliver the best performance on NVIDIA GPUs, regardless of the deployment environment.
借助 NVIDIA Container Runtime 支持的容器技术(如 Docker),开发人员可以将其 GPU 加速应用程序及其依赖项打包到一个包中,无论部署环境如何,都能保证在 NVIDIA GPU 上提供最佳性能。

在线安装方法如下:

distribution=$(. /etc/os-release;echo $ID$VERSION_ID) \
      && curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg \
      && curl -s -L https://nvidia.github.io/libnvidia-container/$distribution/libnvidia-container.list | \
            sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' | \
            sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list

更新并下载安装 nvidia-docker2

apt-get install -y nvidia-docker2

然后重启docker

可以使用如下命令进行验证安装

docker run --rm nvidia/cuda:9.0-base nvidia-smi

微信截图_20230712143250.png

如果有多张卡可以通过添加环境变量来挂载指定的卡到容器内部

-e NVIDIA_VISIBLE_DEVICES=0  #用所有卡使用all参数,多张卡可以使用逗号相隔

接着我们来介绍下离线安装,离线安装需要提前下载好四个deb的安装包

安装包的下载地址:https://download.docker.com/linux/ubuntu/dists/bionic/pool/stable/amd64/

ubuntu18.04版本需要对应以下版本的包

libnvidia-container1_1.8.1-1_amd64.deb
libnvidia-container-tools_1.8.1-1_amd64.deb
nvidia-container-toolkit_1.8.1-1_amd64.deb
nvidia-container-runtime_3.8.1-1_all.deb

上传到服务器,按照上述列表顺序进行安装

dpkg -i 包名

安装完成以后可以使用以下命令进行验证

/usr/bin/nvidia-container-runtime

微信截图_20230712143937.png

然后重启下docker服务

如果需要在后面起的POD都需要使用GPU卡可以直接将docker默认的runc替换成nvidia的,主要修改/etc/docker/daemon.json文件,如果没有这个文件可以直接在这个路径上创建

cat /etc/docker/daemon.json
{
    "default-runtime": "nvidia",
    "runtimes": {
        "nvidia": {
            "path": "/usr/bin/nvidia-container-runtime",
            "runtimeArgs": []
        }
    }
}

然后重启docker服务就会生效。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://sulao.cn/post/919.html

我要评论

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。