Docker 19.03,增加了對(duì)--gpus選項(xiàng)的支持,我們?cè)赿ocker里面想讀取nvidia顯卡再也不需要額外的安裝nvidia-docker了,下面開始實(shí)戰(zhàn)
1. 安裝nvidia-container-runtime:
查看官網(wǎng)(https://nvidia.github.io/nvidia-container-runtime)得知基于RHEL的發(fā)行版添加源的方式為:
distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
curl -s -L https://nvidia.github.io/nvidia-container-runtime/$distribution/nvidia-container-runtime.repo | \
sudo tee /etc/yum.repos.d/nvidia-container-runtime.repo
添加源后直接yum安裝:
yum install nvidia-container-runtime
2. 安裝docker-19.03
在新主機(jī)上首次安裝Docker Engine-Community之前,需要設(shè)置Docker存儲(chǔ)庫(kù)。之后,您可以從存儲(chǔ)庫(kù)安裝和更新Docker。
- 2.1 安裝所需的軟件包。yum-utils提供了yum-config-manager 效用,并device-mapper-persistent-data和lvm2由需要 devicemapper存儲(chǔ)驅(qū)動(dòng)程序。
yum install -y yum-utils \
device-mapper-persistent-data \
lvm2
- 2.2 使用以下命令來設(shè)置穩(wěn)定的存儲(chǔ)庫(kù)。
yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
- 2.3 開啟Docker服務(wù)
systemctl start docker && systemctl enable docker
- 2.4 驗(yàn)證docker版本是否安裝正常
$ docker version
Client: Docker Engine - Community
Version: 19.03.3
API version: 1.40
Go version: go1.12.10
Git commit: a872fc2f86
Built: Tue Oct 8 00:58:10 2019
OS/Arch: linux/amd64
Experimental: false
Server: Docker Engine - Community
Engine:
Version: 19.03.2
API version: 1.40 (minimum version 1.12)
Go version: go1.12.8
Git commit: 6a30dfc
Built: Thu Aug 29 05:27:34 2019
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: 1.2.10
GitCommit: b34a5c8af56e510852c35414db4c1f4fa6172339
runc:
Version: 1.0.0-rc8+dev
GitCommit: 3e425f80a8c931f88e6d94a8c831b9d5aa481657
docker-init:
Version: 0.18.0
GitCommit: fec3683
3. 啟動(dòng)容器
docker run -d -it -p 1518:1518 --name="centos" --gpus all nvidia/cuda:9.1-cudnn7-runtime-centos7 /bin/bash
進(jìn)入容器
docker exec -it centos /bin/bash
查看顯卡
$ nvidia-smi
Mon Oct 21 02:15:19 2019
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 390.59 Driver Version: 390.59 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
|===============================+======================+======================|
| 0 GeForce GTX 108... Off | 00000000:00:08.0 Off | N/A |
| 29% 33C P0 58W / 250W | 0MiB / 11178MiB | 0% Default |
+-------------------------------+----------------------+----------------------+
| 1 GeForce GTX 108... Off | 00000000:00:09.0 Off | N/A |
| 29% 28C P5 12W / 250W | 0MiB / 11178MiB | 0% Default |
+-------------------------------+----------------------+----------------------+
| 2 GeForce GTX 108... Off | 00000000:00:0A.0 Off | N/A |
| 29% 27C P5 12W / 250W | 0MiB / 11178MiB | 0% Default |
+-------------------------------+----------------------+----------------------+
| 3 GeForce GTX 108... Off | 00000000:00:0B.0 Off | N/A |
| 29% 30C P5 12W / 250W | 0MiB / 11178MiB | 0% Default |
+-------------------------------+----------------------+----------------------+
| 4 GeForce GTX 108... Off | 00000000:00:0C.0 Off | N/A |
| 29% 31C P0 58W / 250W | 0MiB / 11178MiB | 0% Default |
+-------------------------------+----------------------+----------------------+
| 5 GeForce GTX 108... Off | 00000000:00:0D.0 Off | N/A |
| 29% 23C P5 12W / 250W | 0MiB / 11178MiB | 0% Default |
+-------------------------------+----------------------+----------------------+
| 6 GeForce GTX 108... Off | 00000000:00:0E.0 Off | N/A |
| 29% 27C P5 12W / 250W | 0MiB / 11178MiB | 0% Default |
+-------------------------------+----------------------+----------------------+
| 7 GeForce GTX 108... Off | 00000000:00:0F.0 Off | N/A |
| 29% 27C P5 12W / 250W | 0MiB / 11178MiB | 3% Default |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Processes: GPU Memory |
| GPU PID Type Process name Usage |
|=============================================================================|
| No running processes found |
+-----------------------------------------------------------------------------+