安装nvidia驱动和nvidia-docker

安装NVIDIA驱动

在NVIDIA下载对应的驱动安装文件

  1. 安装依赖环境

    yum install -y pciutils gcc gcc-c++ kernel-devel
    yum update -y kernel
    
  2. 屏蔽系统自带的nouveau

    # 查看命令:
    lsmod | grep nouveau
    
    # 修改dist-blacklist.conf文件:
    vi /lib/modprobe.d/dist-blacklist.conf
    
    # 将nvidiafb注释掉:
    #blacklist nvidiafb 
    
    # 然后添加以下语句:
    blacklist nouveau
    options nouveau modeset=0
    
    dracut --force
    
  3. 重建initramfs image步骤

    mv /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r).img.bak
    dracut /boot/initramfs-$(uname -r).img $(uname -r)
    
  4. 修改运行级别为文本模式

    systemctl set-default multi-user.target
    
  5. 重新启动

    reboot
    
    lsmod | grep nouveau
    # 检查上面的命令有没有结果,如果还有结果
    dracut --force
    
  1. 运行安装文件

    chmod +x NVIDIA-Linux-x86_64-410.129-diagnostic.run
    ./NVIDIA-Linux-x86_64-410.129-diagnostic.run
    
    nvidia-smi
    

安装NVIDIA Docker

  1. 安装Docker

    yum install -y wget
    cd /etc/yum.repos.d/
    wget http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
    yum install -y docker-ce
    systemctl start docker
    systemctl enable docker
    
    vi /etc/docker/daemon.json
    {
      "registry-mirrors": ["https://b9pmyelo.mirror.aliyuncs.com"]
    }
    
    systemctl restart docker
    docker verison
    docker info
    
  2. 安装Nvidia-Docker

    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
    yum clean expire-cache
    yum install -y nvidia-docker2
    systemctl restart docker
    
    # 启动启用GPU的CUDA容器;使用--gpus
    docker run --rm --gpus all nvidia/cuda:10.0-base nvidia-smi
    docker run --rm --runtime=nvidia -e NVIDIA_VISIBLE_DEVICES=all nvidia/cuda:10.0-base nvidia-smi
    
    # 在两个GPU上启动启用GPU的容器
    docker run --rm --gpus 2 nvidia/cuda:10.0-base nvidia-smi
    
    # 在特定GPU上启动启用GPU的容器
    docker run --rm --gpus '"device=0"' nvidia/cuda:10.0-base nvidia-smi
    docker run --rm --gpus '"device=0,1"' nvidia/cuda:10.0-base nvidia-smi
    docker run --rm --runtime=nvidia -e NVIDIA_VISIBLE_DEVICES=0,1 nvidia/cuda:10.0-base nvidia-smi
    
  3. Dockerfiles

    可以通过环境变量在图像中设置功能和GPU枚举。如果环境变量是在Dockerfile中设置的,则无需在命令行上进行设置。docker run

    例如,如果要创建自己的自定义CUDA容器,则应使用以下内容:

    ENV NVIDIA_VISIBLE_DEVICES all
    ENV NVIDIA_DRIVER_CAPABILITIES compute,utility
    

    这些环境变量已在NVIDIA提供的CUDA映像中设置。

你可能感兴趣的:(安装nvidia驱动和nvidia-docker)