博客
关于我
CentOS下Nvidia docker 2.0之安裝教程&踩坑實錄
阅读量:290 次
发布时间:2019-03-03

本文共 3008 字,大约阅读时间需要 10 分钟。

CentOS下Nvidia docker 2.0之安裝教程&踩坑實錄

前言

本篇參考,並記錄安裝過程所踩過的坑坑洞洞。

要求

官網裡列出了四個要求:

1. GNU/Linux x86_64 with kernel version > 3.10

使用uname -r查詢,筆者機器的結果為:

3.10.0-514.6.2.el7.x86_64

2. Docker >= 1.12

使用docker -v查詢,筆者機器的結果為:

Docker version 18.09.0, build 4d60db4

如果對Docker的版本有疑惑,或者是Docker版本太低,可以參考。

3. NVIDIA GPU with Architecture > Fermi (2.1)

關於查詢NVIDIA GPU architecture的方法,筆者試過到Nvidia的官網查,或是看有沒有linux指令可以查詢,但是都沒有找到。最後才在維基百科上看到一個完整列出各architecture下的GPU GeForce型號的表格。

先使用nvidia-smi -L這個指令找到顯卡的GeForce版本,結果如下:

GPU 0: GeForce GTX 1080 (UUID: GPU-5ee9e385-7299-d14b-e94c-288298ae5234)

GPU 1: GeForce GTX 1080 (UUID: GPU-2d0c6c1e-0b17-3428-f42b-7ef5ffab32e8)

然後再去中的GPUs supported這個表格查詢。

table
表格中的四個欄位分別是Compute capability(version),Micro-architecture,GPUs及GeForce。
可以從GeForce這個欄位(第四欄)找出自己的GPU,然後再回頭看它的Micro-architecture。
筆者GPU的GeForce版本是GTX 1080,所以它的micro-architecture是Pascal。
而Compute capability的順序是Turing > Volta > Pascal > Maxwell > Kepler > Fermi > Tesla。
所以筆者的GPU符合要求。

4. NVIDIA drivers ~= 361.93 (untested on older versions)

使用nvidia-smi查詢,筆者機器的結果為:

nvidia-smi
如果達不到這個要求,則需要更新顯卡驅動程式,具體步驟可以參考:

步驟

如果確認了系統、Docker版本、顯卡Architecture及顯卡驅動程式都滿足要求,就可以進入以下步驟:

1. 移除nvidia-docker 1.0

docker volume ls -q -f driver=nvidia-docker | xargs -r -I{   } -n1 docker ps -q -a -f volume={   } | xargs -r docker rm -fsudo yum remove nvidia-docker

2. 設定repository

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

3. 更新repository的key

DIST=$(sed -n 's/releasever=//p' /etc/yum.conf)DIST=${   DIST:-$(. /etc/os-release; echo $VERSION_ID)}sudo rpm -e gpg-pubkey-f796ecb0sudo gpg --homedir /var/lib/yum/repos/$(uname -m)/$DIST/nvidia-docker/gpgdir --delete-key f796ecb0sudo yum makecache

4. 安裝nvidia-docker 2.0

sudo yum install nvidia-docker2

5. 重新載入Docker daemon的設定

sudo pkill -SIGHUP dockerd

6. 測試安裝是否成功

docker run --runtime=nvidia --rm nvidia/cuda nvidia-smi

踩坑實錄

  1. 筆者在第三步碰到了以下錯誤:

[Errno 14] HTTPS Error 404 - Not Found

如果碰到同樣的錯誤,可以前往查看。

  1. 在第六步的時候又碰到了另一個錯誤:

docker: Error response from daemon: Unknown runtime specified nvidia.

See ‘docker run --help’.

如果碰到同樣的錯誤,可以前往查看。

  1. 在第六步還有可能碰到另一個錯誤:

docker: Error response from daemon: OCI runtime create failed: container_linux.go:348: starting container process caused “process_linux.go:402: container init caused “process_linux.go:385: running prestart hook 1 caused \“error running hook: exit status 1, stdout: , stderr: exec command: [/usr/bin/nvidia-container-cli --load-kmods configure --ldconfig=@/sbin/ldconfig --device=0,1 --compute --utility --require=cuda>=8.0 --pid=4693 /var/lib/docker/overlay/e70cf536e76f503847825ad1bb8cbfca5a03466bf36be4148e9fe6659e85c2b9/merged]\\nnvidia-container-cli: initialization error: cuda error: no cuda-capable device is detected\\n\”””: unknown.

nvidia-smi,出現:

NVIDIA-SMI has failed because it couldn’t communicate with the NVIDIA driver. Make sure that the latest NVIDIA driver is installed and running.

這代表需要安裝Nvidia driver,有詳細的教學。

參考連結

转载地址:http://tmtm.baihongyu.com/

你可能感兴趣的文章
struct 模块
查看>>
python之集合类型内置方法
查看>>
编程与编程语言分类
查看>>
【 UVA - 572 】 Oil Deposits (DFS水题)
查看>>
约瑟夫环问题
查看>>
CF #716 (Div. 2) B. AND 0, Sum Big(思维+数学)
查看>>
Java 設計模式 - 建造者模式
查看>>
ES6 JavaScript 重新認識 Promise
查看>>
2020-07-16:如何获得一个链表的倒数第n个元素?
查看>>
Imagination官方信息速递2021年光线追踪专刊
查看>>
webpack01 -- webpack安装和配置
查看>>
分享九款不同页面404源码html
查看>>
404页圈小猫游戏代码
查看>>
好看清新卡通人物404单页网站源码
查看>>
简洁仿t猫404页html源码
查看>>
Python九齿耙(Ninerake)数据采集大数据深度学习智能分析爬虫软件的正则表达式规则简介
查看>>
Kotlin实现冒泡排序
查看>>
NodeJS下TypeScript环境安装
查看>>
汽车后市场,小程序为何独占鳌头
查看>>
短视频小程序,互联网新风口
查看>>