Ubuntu Nvidia Docker单机多卡环境配置

ubuntu版本是22.04,现在最新版本是24.xx,截止当前,Nvidia的驱动最高还是22.04版本,不建议更新至最新版本。本部分是从0开始安装Nvidia docker的记录,若已安装Nvdia驱动,请直接跳至3。

1、更新软件软件列表

更新apt,安装gcc、g++等

powershell 复制代码
apt-get update
apt-get install g++ gcc make

2、Nvidia显卡安装(建议方式2)

0)预备条件

  • 查看是否有物理显卡,执行命令出现显卡信息则有物理显卡,否则需要查看显卡是否安装或者插拔一下

    powershell 复制代码
    lspci | grep -i nvidia
  • 查看是否已有Nvidia显卡驱动,若存在与即将安装版本不一致,先卸载原有驱动

    powershell 复制代码
    nvidia-smi		# 查看是否有显卡驱动,无显卡信息输出则未安装
    sudo apt-get remove nvidia-*  		# 卸载原有的显卡驱动

1)安装方式1:

  • 查看显卡型号和支持的nvidia驱动版本

    powershell 复制代码
    lshw -c display
    ubuntu-drivers devices
  • 根据推荐的nvidia-driver下载对应的驱动

    • 选择推荐的版本:ubuntu-drivers autoinstall
    • 手动安装特定版本:apt install nvidia-driver-xxx
  • 安装完成后重启

    powershell 复制代码
    shutdown -r now  	# 关机后立即重启

2)安装方式2:

  • ubuntu官网,根据显卡、os等信息下载并安装显卡驱动,具体参考博文ubuntu下安装nvidia驱动。根据自身的实践经验,下载好驱动后只需要执行以下命令,博文中其他命令在基本上不影响安装:

    powershell 复制代码
    sudo ./NVIDIA-Linux-x86_64-435.21.run -no-opengl-files -no-x-check -no-nouveau-check

3)安装成功验证:

  • 执行命令nvidia-smi,界面呈现显卡详细信息即为安装成功

3、Nvidia docker安装

  • 安装nvidia-container-toolkit,下面提取了apt安装方式,其他比如yum、zypper等安装方式参考NVIDIA CONTAINER TOOLKIT ,apt安装方式根据下面命令复制安装即可。

    powershell 复制代码
    	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/stable/deb/nvidia-container-toolkit.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
    powershell 复制代码
    apt-get install -y nvidia-container-toolkit
  • docker安装方式

    • 安装docker引擎
    powershell 复制代码
    apt install docker.io
    • 加载docker镜像
    powershell 复制代码
    docker load -i nvdocker.tar # 其中nvdocker.tar是镜像名称,需要下载
  • 配置nvidia-docker

    powershell 复制代码
    nvidia-ctk runtime configure --runtime=docker
    systemctl restart docker
  • 验证nvidia docker是否可用

    powershell 复制代码
    docker run hello-world

    如果输出"Hello from Docker! xxx...",表明安装成功

  • 使用GPU

    docker run有个参数 --gpus,可指定分配几个GPU

4、其他

  • 查看cpu架构
    • uname -m
    • lscpu
相关推荐
小小的木头人7 小时前
Ubuntu Samba修改端口绕过445封禁挂载
运维·ubuntu
March.s8 小时前
Docker 容器技术完全指南:从生态到架构的深度解析
docker
wdfk_prog9 小时前
ROS教程:01 搭建 ROS1 Noetic Docker 开发环境
运维·缓存·docker·容器·ros
szephyr9 小时前
Docker + Compose 实战:把本地项目一键搬到云服务器,附完整配置
运维·docker·容器·部署·云服务器
wdfk_prog10 小时前
ros教程02:创建 catkin Workspace、Package 与第一个 ROS1 C++ Node
运维·缓存·docker·容器·ros
名字还没想好☜13 小时前
Docker 网络实战:bridge/host/none/自定义网络、容器互通与端口映射踩坑
运维·docker·kubernetes
问简15 小时前
【ubuntu】在 Ubuntu 26 上屏蔽 Windows 盘
ubuntu
March.s16 小时前
Docker 容器与网络深度指南:从入门到精通
docker
探索云原生16 小时前
KubeClipper 1.7.0 发布:Operation 优化与 Kubernetes 1.37 支持
linux·docker·云原生·kubernetes·go
程曦曦16 小时前
MySQL 生产库误删 98 张表后的时间点恢复实战:从 binlog 解析到资金对账
linux·数据结构·其他·算法·ubuntu·运维开发