WSL2 + docker + cuda 报错nvidia-container-cli: mount error: file creation failed:libnvidia-ml.so.1: fi

这篇具有很好参考价值的文章主要介绍了WSL2 + docker + cuda 报错nvidia-container-cli: mount error: file creation failed:libnvidia-ml.so.1: fi。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

环境

  • WSL2 + Ubuntu 22.04
  • 显卡驱动: 528.89
  • CUDA: 11.7

问题

在创建docker时使用--gpus all会报错:

docker run --gpus all -it -e DISPLAY=unix$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix:rw celinachild/orbslam2 /bin/bash
docker: Error response from daemon: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: error during container init: error running hook #0: error running hook: exit status 1, stdout: , stderr: Auto-detected mode as 'legacy'
nvidia-container-cli: mount error: file creation failed: /var/lib/docker/overlay2/b92e32945b90e830d9786a89fa0c138933ab7657c8a459bafe551fb944836b65/merged/usr/lib/x86_64-linux-gnu/libnvidia-ml.so.1: file exists: unknown.
ERRO[0000] error waiting for container: context canceled

解决

参考 issue1551

解决方式是

  1. 先不使用gpu创建容器
  2. 删除相关文件(注意根据报错删除文件,不要删多)
rm -rf /usr/lib/x86_64-linux-gnu/libnvidia-ml.so.1 /usr/lib/x86_64-linux-gnu/libcuda.so.1
  1. 创建不包含这些文件的新的镜像
  2. 使用新的镜像创建容器

实现如下:

╭─changym at LAPTOP-CHANGYM in ~ (base)
╰─○ docker run -it celinachild/orbslam2
root@5ef649cf9ec8:/# rm /usr/lib/x86_64-linux-gnu/libnvidia-*
root@5ef649cf9ec8:/# rm /usr/lib/x86_64-linux-gnu/libcuda.so*
root@5ef649cf9ec8:/# rm /usr/lib/x86_64-linux-gnu/libnvcuvid.so.*
root@5ef649cf9ec8:/# exit
╭─changym at LAPTOP-CHANGYM in ~ (base)
╰─○ docker commit peaceful_ganguly orbslam2_cuda
sha256:2a93ce93469ed986226d119c2f4fe886b8b61554f20304cfcdd8832d8d02da0c
╭─changym at LAPTOP-CHANGYM in ~ (base)
╰─○ docker run --gpus all -it -e DISPLAY=unix$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix:rw orbslam2_cuda /bin/bash
root@47d847a00e55:/# nvidia-smi
Fri Apr 14 08:32:53 2023
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 525.105.16   Driver Version: 528.89       CUDA Version: 12.0     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|                               |                      |               MIG M. |
|===============================+======================+======================|
|   0  Quadro T2000 wi...  On   | 00000000:01:00.0  On |                  N/A |
| N/A   51C    P8     3W /  35W |   1839MiB /  4096MiB |     10%      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+

+-----------------------------------------------------------------------------+
| Processes:                                                                  |
|  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
|        ID   ID                                                   Usage      |
|=============================================================================|
|    0   N/A  N/A        20      G   /Xwayland                       N/A      |
|    0   N/A  N/A        20      G   /Xwayland                       N/A      |
|    0   N/A  N/A        33      G   /Xwayland                       N/A      |
+-----------------------------------------------------------------------------+

此时可以正常创建容器。文章来源地址https://www.toymoban.com/news/detail-611934.html

到了这里,关于WSL2 + docker + cuda 报错nvidia-container-cli: mount error: file creation failed:libnvidia-ml.so.1: fi的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • windows wsl2 docker+k8s+cuda容器无法启动问题解决

    docker: Error response from daemon: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: error during container init: error running hook #1: error running hook: exit status 1, stdout: , stderr: Auto-detected mode as \\\'legacy\\\' nvidia-container-cli: mount error: file creation failed: /var/lib/docker/overl

    2024年02月13日
    浏览(38)
  • 在 WSL2 中使用 NVIDIA Docker 进行全栈开发和深度学习 TensorFlow pytorch GPU 加速

    0.1 起源 生产环境都是在 k8d pod 中运行,直接在容器中开发不好嘛? 每次换电脑,都要配配配,呸呸呸 新电脑只安装日常用的软件不好嘛,环境变量配配配,各种日常软件和开发软件到处拉💩 虚拟机呗,怎么调用 GPU 是个问题,hyper-v 好像是可以魔改配置实现,又得改改改。

    2024年02月11日
    浏览(44)
  • 踩坑!WSL2报错:docker unrecognized service

    WSL2安装Docker后执行 sudo service docker start 报错:docker: unrecognized service实录 在WSL中安装Docker要使用命令: 即原生linux docker,若使用以下命令安装则会提示unrecognized service。。。 安装过程见 [Install Docker in WSL](https://blog.csdn.net/weixin_36815313/article/details/107641262)

    2024年02月15日
    浏览(26)
  • 基于Docker的深度学习环境NVIDIA和CUDA部署以及WSL和linux镜像问题

    docker的介绍网上有很多,对于深度学习的认来讲,docker的好处就是直接把环境分享给他人,他人不需要再配置环境了。 比如我有一个目标检测的项目,我想分享给朋友,那么他首先需要在自己的电脑上配置好显卡驱动、CUDA、CuDNN,在拿到我的项目后,还需要安装各种依赖库,

    2024年02月05日
    浏览(32)
  • Win Docker Desktop + WSL2 部署PyTorch-CUDA服务至k8s算力集群

    首先根据你的操作系统版本 安装WSL ,记得切换WSL2,其次 安装Docker Desktop,如果Docker安装后一直无法加载WSL,卸载后重新安装时不要勾选WSL,安装后去设置里面勾上WSL即可。 Windows中运行以上代码,WSL中安装Ubuntu是为了方便在docker容器中挂载数据。 去WSL-Ubuntu系统中运行以上命

    2024年01月21日
    浏览(39)
  • Docker Desktop 更新4.25.1版本后出现WSL2报错

     近期发现 Docker Desktop 有新版本可以更新,结果操作后  再打包它就闪退了。无奈只能删除 Docker Desktop 后下载新版本安装程序进行重装,然后依次出现2个弹窗上面显示如下报错内容。  第一个弹窗:   打开win11 命令行输入 wsl  --shutdown , 再次尝试打开 Docker Des

    2024年02月04日
    浏览(64)
  • 【WSL2】【图形界面】【CUDA驱动】WSL2 Ubuntu+gnome原生图形界面及WSL2显卡CUDA驱动的安装

      没有图形化界面的Ubuntu实在是看着不爽,虽然已经习惯用命令。为了更加方便使用WSL2子系统,还是配置了gnome原生桌面(虽然不是很轻量级,但是舒服啊!),然后因为有深度学习需求,有NVIDIA的显卡顺带配置了一下显卡驱动。   下面看看如何配置WSL2图形界面和显卡

    2024年02月10日
    浏览(47)
  • WSL2安装CUDA

    在WSL里面不用安装显卡驱动,显卡驱动必须要提前在Windows系统里面安装好,安装好后相应库文件会自动映射到WSL里面 进入网站 找到自己需要的版本,我这里是CUDA 11.7.1,点击进入详细页面 依次选择 L i n u x → x 86 _ 64 → W S L − U b u n t u → 2.0 → r u n f i l e Linuxrightarrow x86_

    2024年02月16日
    浏览(33)
  • WSL2 Ubuntu子系统安装cuda+cudnn+torch

    确保Windows系统版本高于windows10 21H2或Windows11,然后在Windows中将显卡驱动升级到最新即可,WSL2已支持对显卡的直接调用。 进入英伟达官网中的cuda下载地址:CUDA Toolkit 11.7 Update 1 Downloads | NVIDIA Developer 由于作者使用的是WSL-Ubuntu20.04长期支持版,所以按照以下配置来进行安装。

    2024年02月12日
    浏览(32)
  • Win11基于WSL2安装CUDA、cuDNN和TensorRT(2023-03-01)

    如果有小伙伴看了2023-03-05更新,发现设置环境变量后运行cuda代码在链接过程中仍然会有报错问题啥的,那我这里建议,先别管2023-03-05更新的内容了,还是按照我博客里的安装步骤一步一步往下安装,用 sudo apt install nvidia-cuda-toolkit 命令去安装nvcc,也不需要配置环境变量了。

    2024年02月02日
    浏览(42)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包