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
相关推荐
nuo53420212 小时前
基础 6 —— Docker 容器数据卷
docker·容器
Sinclair12 小时前
安企CMS的安装-Docker 部署
运维·docker·容器
要开心吖ZSH13 小时前
AI医疗分诊与健康咨询助手agent开发——(4-2)从零到一:我给AI医疗分诊助手加了个“知识库大脑“,终于搞懂了RAG是什么
java·docker·agent·医疗·rag
汪汪大队u14 小时前
【无标题】
运维·docker·kubernetes·prometheus
spider_xcxc16 小时前
Docker Compose 容器通信详解:同一个 Compose 文件才能互通吗?
docker·容器·k8s·容器化·容器网络
BaiduPHP18 小时前
docker异常断电,出现docker服务,启动失败
docker·容器·eureka
梦梦代码精20 小时前
多商户商城技术选型实测:ThinkPHP 8与Vue 3结合,B2B2C架构下的开源实践
docker·开源·代码规范
寒冰碧海20 小时前
大模型部署从0到1(三):单机多卡 vLLM 部署Qwen3.6实战|Docker Compose 一键启动
docker·容器·vllm
chexus21 小时前
Docker 镜像瘦身:使用 Maven 拆分 Jar 包
docker·maven·jar
梦梦代码精21 小时前
智能体应用开发平台技术选型:一个自带商业模块的开源方案调研
人工智能·docker·开源