• 安装nvidia-docker


    docker中不能安装nvidai驱动

    nvidia-docker是一个可以使用GPU的docker,nvidia-docker是在docker上做了一层封装,通过nvidia-docker-plugin,然后调用到docker上,其最终实现的还是在docker的启动命令上携带一些必要的参数。因此在安装nvidia-docker之前,还是需要安装docker的。

    docker一般都是使用基于CPU的应用,而如果是GPU的话,就需要安装特有的硬件环境,比如需要安装nvidia driver。所以docker容器并不直接支持Nvidia GPU。为了解决这个问题,最早的处理办法是在容器内部,全部重新安装nvidia driver,然后通过设置相应的设备参数来启动container,然而这种办法是很脆弱的。因为宿主机的driver的版本必须完全匹配容器内的driver版本,这样导致docker image无法共享,很可能本地机器的不一致导致每台机器都需要去重复操作,这很大的违背了docker的设计之初。

    为了使docker image能很便利的使用Nvidia GPU,从而产生了nvidia-docker,由它来制作nvidia driver的image,这就要求在目标机器上启动container时,确保字符设备以及驱动文件已经被挂载。

    安装docker_ce

    安装nvidia-docker2需要dokcer_ce*

    • 卸载原来的docker
    yum remove docker  docker-common docker-selinux docker-engine
    
    • 安装依赖包
    # yum install -y yum-utils device-mapper-persistent-data lvm2
    # yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
    
    • 安装docker_ce
    # yum list docker-ce --showduplicates | sort -r
    # yum install docker_ce
    

    • 启动docker
    # systemctl start docker
    # systemctl enable docker 
    

    安装nvidia-docker2

    • 安装nvidia-docker2
    # yum install nvidia-docker2
    # pkill -SIGHUP dockerd
    

    使用nvidia-docker2需要宿主机上面nvidia的驱动安装完成

    修改runtime

    [root@t91 ~]# cat /etc/docker/daemon.json 
    {
    
        "runtimes": {
            "nvidia": {
                "path": "nvidia-container-runtime",
                "runtimeArgs": []
            }
        }
    }
    

    使用nvidia-docer2启动image,并进入container

    # nvidia-docker run -itd --name node1 --hostname node1  centos:7.5.1804 /usr/sbin/init
    # docker exec -it node1 /bin/bash
    
  • 相关阅读:
    用记事本编写一个Servlet项目
    Servlet开发(一)
    41、java与mysql乱码的问题
    40、JDBC相关概念介绍
    mysql-5.7.12-winx64安装版配置、使用
    39、集合线程安全问题
    38、各Set实现类的性能分析
    电脑取随机数是什么原理,是真正的随机数吗?转自知乎.
    创建Car类,实例化并调用Car类计算运输的原料量是否足够
    用Random类输出验证码
  • 原文地址:https://www.cnblogs.com/zhangjxblog/p/12168321.html
Copyright © 2020-2023  润新知