docker内部执行nvidia-smi无任何显示的解决方法

这篇具有很好参考价值的文章主要介绍了docker内部执行nvidia-smi无任何显示的解决方法。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

docker内部执行nvidia-smi无任何显示的解决方法

贺志国
2023.4.11

今天在Docker内部编译程序,发现与CUDA相关的代码居然没有编译,于是在Docker内部执行Nvidia显卡驱动检测命令nvidia-smi,执行完毕后,无任何输出,也没有任何报错信息,但在Docker外部执行该命令,结果如下图所示,没有任何异常:
docker内部执行nvidia-smi无任何显示的解决方法
最开始我以为是Docker启动有问题,于是连续重启两次,仍然是nvidia-smi命令无任何输出。仔细观察启动Docker的提示,说是Docker内部的Nvidia显卡驱动异常,未能启用Nvidia显卡,于是按照Nvidia官方网站https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/install-guide.html#docker的方法重新安装NVIDIA Container Toolkit。安装命令罗列如下(我也是在官网抄过来的):

# 重新安装Docker
curl https://get.docker.com | sh   && sudo systemctl --now enable docker

# 设置安装包和GPG key的仓库地址
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

# 更新安装源
sudo apt-get update

# 安装nvidia-container-toolkit
sudo apt-get install -y nvidia-container-toolkit

# 配置Docker以便正确识别NVIDIA的容器运行时库
sudo nvidia-ctk runtime configure --runtime=docker

# 重启Docker
sudo systemctl restart docker

本以为万事大吉,结果非常不幸,执行第一步curl https://get.docker.com | sh && sudo systemctl --now enable docker就出现如下错误:

E: Conflicting values set for option Signed-By regarding source https://nvidia.github.io/libnvidia-container/stable/ubuntu18.04/amd64/ /: /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg !=
E: The list of sources could not be read.

官方网站https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/troubleshooting.html提到的第一个难点解疑就是针对该问题的,具体办法就是执行如下两行命令,找到重复的安装源并删除之:

grep -l "nvidia.github.io" /etc/apt/sources.list.d/* | grep -vE "/nvidia-container-toolkit.list\$"

sudo rm /etc/apt/sources.list.d/nvidia-docker.list 

接下来再依次执行上述命令,就可修复Docker内部的Nvidia工具箱,操作截图如下所示:
docker内部执行nvidia-smi无任何显示的解决方法
docker内部执行nvidia-smi无任何显示的解决方法
docker内部执行nvidia-smi无任何显示的解决方法
进入Docker,执行命令nvidia-smi,就可以看到正确的Nvidia显卡信息了:
docker内部执行nvidia-smi无任何显示的解决方法文章来源地址https://www.toymoban.com/news/detail-466524.html

到了这里,关于docker内部执行nvidia-smi无任何显示的解决方法的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 没有NVIDIA控制面板,在cmd中使用nvidia-smi命令不显示CUDA Version的解决方案

    Environment_set 没有NVIDIA控制面板,在cmd中使用nvidia-smi命令不显示CUDA Version 先在控制面板中查看是否被隐藏了,查看方式选择:小图标 这里若没有NVIDIA控制面板,而NVIDIA驱动已安装,则可能是缺少组件:NVIDIA control panel,可以单独下载,推荐更新NVIDIA驱动,直接安装适合本电脑

    2024年02月06日
    浏览(47)
  • 解决 Ubuntu 重启后输入 nvidia-smi 显示 no devices were found 的问题

    根据下面的链接,使用 ubuntu-drivers devices 和 sudo ubuntu-drivers install 安装推荐的版本后 Ubuntu 卸载重装 Nvidia 显卡驱动-CSDN博客 第一次重启电脑是可以使用显卡驱动的,但是之后每次再重启后再输入 nvidia-smi,就会显示:no devices were found 最初一周我一直都懒得搜到底是为什么会出

    2024年01月23日
    浏览(48)
  • nvcc --version和nvidia-smi显示的CUDA Version不一致

    CUDA有两种API,一个是驱动API(Driver Version),依赖NVIDIA驱动,由nvidia-smi查看,另一个是运行API(Runtime Version)是软件运行所需要的,一般驱动API版本=运行API版本即可。 驱动API的依赖文件由GPU driver installer安装,nvidia-smi属于这一类API; 运行API的依赖文件由CUDA Toolkit installer安

    2024年02月10日
    浏览(39)
  • 阿里云服务器执行nvidia-smi命令后提示【No devices were found】

    服务器有一段时间没用了,今天想拿来跑模型,结果我查询显卡的时候居然提示“No devices were found”,也不算是报错吧,但是起码是不对的,这个意思就是找不到设备资源了。 这个着实就很奇怪,我并没有做过任何事情就很莫名其妙。 首先查看下显卡是否还在,如下: 结果

    2024年02月11日
    浏览(96)
  • ubuntu20.04装显卡驱动nvidia-smi显示成功的血泪史

    注意这只是我个人在安装驱动过程中踩过的坑,不要直接照着我的方法装 在csnd上看了许多教程,最终选择直接命令行输入 ubuntu-drivers devices 可以看到推荐的版本是525 于是执行sudo apt install nvidia-driver-525(好像这一步执行完后没有报错) 打开软件更新看到  然后我就根据网上

    2023年04月15日
    浏览(39)
  • nvidia-smi报错(已解决):NVIDIA-SMI has failed because it couldn‘t communicate with the NVIDIA driver 原因分析

    基本是follow下面教程修复的 nvidia-smi报错:NVIDIA-SMI has failed because it couldn‘t communicate with the NVIDIA driver 原因及避坑解决方案_打拳的土豆的博客-CSDN博客 1 背景分析: 可能是由于断电重启造成的 当再次跑实验时,发现cuda不可用,于是输入“nvidia-smi”才发现了一个错误,如下:

    2024年02月09日
    浏览(84)
  • Ubuntu下nvidia-smi失败,使用dkms解决

    nvidia-smi显示无法与驱动通讯 一般来说是因为机器重启linux内核自动更新导致,可以尝试回退内核版本,或者使用dkms安装该内核下驱动配套的包,这里主要介绍使用dkms如何处理 查看已安装的nvidia驱动版本 显示 说明我电脑上nvidia驱动的版本是nvidia-525.116.04 安装dkms和相关包 安

    2024年02月13日
    浏览(36)
  • ubuntu服务器关机重新开机之后nvidia-smi不显示但nvcc -C没问题

    安装stable diffusion webui过程中发现的问题。 出现报错: AssertionError: Torch is not able to use GPU; add --skip-torch-cuda-test to COMMANDLINE_ARGS variable to disable this check 然后来看nvidia-smi 的时候发现驱动挂了 1. nvcc -V,查看cuda是可以看到的 说明之前至少安装cuda的时候没挂,应该是服务器启动的

    2024年02月12日
    浏览(74)
  • 【已解决】nvidia-smi报错:NVIDIA-SMI has failed because it couldn’t communicate with the ... 阿里云GPU服务器

    如题,起因是在阿里云GPU服务器上,使用原先正常运行的镜像生成了容器,但容器的显卡驱动出问题了,使用nvidia-smi命令会报错 NVIDIA-SMI has failed because it couldn’t communicate with the NVIDIA driver. 尝试使用官网.run文件重新安装显卡驱动会报错ERROR: Unable to load the kernel module ‘nvidia

    2024年02月11日
    浏览(39)
  • 解决ubuntu cuda版本nvcc -V和nvidia-smi不一致问题

    在使用nvcc -V和nvidia-smi查看cuda版本时不一致: nvcc -V版本是10.1 nvidia-smi的版本是12.2 上面如果能显示版本,所以是已经有驱动,首先要删除之前的驱动: 此时执行nvidia-smi,会提示Command \\\'nvidia-smi\\\' not found,按照提示安装即可: 安装成功后,再次执行nvidia-smi,成功,显示cuda版本

    2024年02月15日
    浏览(43)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包