這篇文章給大家分享的是有關(guān)docker19.03如何使用NVIDIA顯卡的內(nèi)容。小編覺得挺實(shí)用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。
創(chuàng)新互聯(lián)專注于都江堰企業(yè)網(wǎng)站建設(shè),響應(yīng)式網(wǎng)站開發(fā),電子商務(wù)商城網(wǎng)站建設(shè)。都江堰網(wǎng)站建設(shè)公司,為都江堰等地區(qū)提供建站服務(wù)。全流程定制網(wǎng)站設(shè)計(jì),專業(yè)設(shè)計(jì),全程項(xiàng)目跟蹤,創(chuàng)新互聯(lián)專業(yè)和態(tài)度為您提供的服務(wù)2019年7月的docker 19.03
已經(jīng)正式發(fā)布了,這次發(fā)布對我來說有兩大亮點(diǎn)。
1,就是docker不需要root權(quán)限來啟動喝運(yùn)行了
2,就是支持GPU的增強(qiáng)功能,我們在docker里面想讀取nvidia顯卡再也不需要額外的安裝nvidia-docker
了
確認(rèn)已檢測到NVIDIA卡:
$ lspci -vv | grep -i nvidia 00:04.0 3D controller: NVIDIA Corporation GP100GL [Tesla P100 PCIe 16GB] (rev a1) Subsystem: NVIDIA Corporation GP100GL [Tesla P100 PCIe 16GB] Kernel modules: nvidiafb
這里不再詳細(xì)介紹:如果不知道請移步ubuntu離線安裝TTS服務(wù)
$ cat nvidia-container-runtime-script.sh curl -s -L https://nvidia.github.io/nvidia-container-runtime/gpgkey | \ sudo apt-key add - distribution=$(. /etc/os-release;echo $ID$VERSION_ID) curl -s -L https://nvidia.github.io/nvidia-container-runtime/$distribution/nvidia-container-runtime.list | \ sudo tee /etc/apt/sources.list.d/nvidia-container-runtime.list sudo apt-get update
sh nvidia-container-runtime-script.sh
OK deb https://nvidia.github.io/libnvidia-container/ubuntu18.04/$(ARCH) / deb https://nvidia.github.io/nvidia-container-runtime/ubuntu18.04/$(ARCH) / Hit:1 http://archive.canonical.com/ubuntu bionic InRelease Get:2 https://nvidia.github.io/libnvidia-container/ubuntu18.04/amd64 InRelease [1139 B] Get:3 https://nvidia.github.io/nvidia-container-runtime/ubuntu18.04/amd64 InRelease [1136 B] Hit:4 http://security.ubuntu.com/ubuntu bionic-security InRelease Get:5 https://nvidia.github.io/libnvidia-container/ubuntu18.04/amd64 Packages [4076 B] Get:6 https://nvidia.github.io/nvidia-container-runtime/ubuntu18.04/amd64 Packages [3084 B] Hit:7 http://us-east4-c.gce.clouds.archive.ubuntu.com/ubuntu bionic InRelease Hit:8 http://us-east4-c.gce.clouds.archive.ubuntu.com/ubuntu bionic-updates InRelease Hit:9 http://us-east4-c.gce.clouds.archive.ubuntu.com/ubuntu bionic-backports InRelease Fetched 9435 B in 1s (17.8 kB/s) Reading package lists... Done
$ apt-get install nvidia-container-runtime Reading package lists... Done Building dependency tree Reading state information... Done The following packages were automatically installed and are no longer required: grub-pc-bin libnuma1 Use 'sudo apt autoremove' to remove them. The following additional packages will be installed: Get:1 https://nvidia.github.io/libnvidia-container/ubuntu18.04/amd64 libnvidia-container1 1.0.2-1 [59.1 kB] Get:2 https://nvidia.github.io/libnvidia-container/ubuntu18.04/amd64 libnvidia-container-tools 1.0.2-1 [15.4 kB] Get:3 https://nvidia.github.io/nvidia-container-runtime/ubuntu18.04/amd64 nvidia-container-runtime-hook 1.4.0-1 [575 kB] ... Unpacking nvidia-container-runtime (2.0.0+docker18.09.6-3) ... Setting up libnvidia-container1:amd64 (1.0.2-1) ... Setting up libnvidia-container-tools (1.0.2-1) ... Processing triggers for libc-bin (2.27-3ubuntu1) ... Setting up nvidia-container-runtime-hook (1.4.0-1) ... Setting up nvidia-container-runtime (2.0.0+docker18.09.6-3) ...
which nvidia-container-runtime-hook /usr/bin/nvidia-container-runtime-hook
# step 1: 安裝必要的一些系統(tǒng)工具 yum install -y yum-utils device-mapper-persistent-data lvm2 # Step 2: 添加軟件源信息 yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo # Step 3: 更新并安裝 Docker-CE yum makecache fast yum -y install docker-ce-19.03.2 # Step 4: 開啟Docker服務(wù) systemctl start docker && systemctl enable docker
$ docker version Client: Docker Engine - Community Version: 19.03.2 API version: 1.40 Go version: go1.12.8 Git commit: 6a30dfc Built: Thu Aug 29 05:28:55 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.6 GitCommit: 894b81a4b802e4eb2a91d1ce216b8817763c29fb runc: Version: 1.0.0-rc8 GitCommit: 425e105d5a03fabd737a126ad93d62a9eeede87f docker-init: Version: 0.18.0 GitCommit: fec3683
-gpus
選項(xiàng)$ docker run --help | grep -i gpus --gpus gpu-request GPU devices to add to the container ('all' to pass all GPUs)
$ docker run -it --rm --gpus all ubuntu nvidia-smi Unable to find image 'ubuntu:latest' locally latest: Pulling from library/ubuntu f476d66f5408: Pull complete 8882c27f669e: Pull complete d9af21273955: Pull complete f5029279ec12: Pull complete Digest: sha256:d26d529daa4d8567167181d9d569f2a85da3c5ecaf539cace2c6223355d69981 Status: Downloaded newer image for ubuntu:latest Tue May 7 15:52:15 2019 +-----------------------------------------------------------------------------+ | NVIDIA-SMI 390.116 Driver Version: 390.116 | |-------------------------------+----------------------+----------------------+ | GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC | | Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. | |===============================+======================+======================| | 0 Tesla P4 Off | 00000000:00:04.0 Off | 0 | | N/A 39C P0 22W / 75W | 0MiB / 7611MiB | 0% Default | +-------------------------------+----------------------+----------------------+ +-----------------------------------------------------------------------------+ | Processes: GPU Memory | | GPU PID Type Process name Usage | |=============================================================================| | No running processes found | +-----------------------------------------------------------------------------+ :~$
您是否遇到以下錯誤消息:
$ docker run -it --rm --gpus all debian docker: Error response from daemon: linux runtime spec devices: could not select device driver "" with capabilities: [[gpu]].
上述錯誤意味著Nvidia無法正確注冊Docker。它實(shí)際上意味著驅(qū)動程序未正確安裝在主機(jī)上。這也可能意味著安裝了nvidia容器工具而無需重新啟動docker守護(hù)程序:您需要重新啟動docker守護(hù)程序。
我建議你回去驗(yàn)證是否安裝了nvidia-container-runtime或者重新啟動Docker守護(hù)進(jìn)程。
$ docker run -it --rm --gpus all ubuntu nvidia-smi -L GPU 0: Tesla P4 (UUID: GPU-fa974b1d-3c17-ed92-28d0-805c6d089601)
$ docker run -it --rm --gpus all ubuntu nvidia-smi --query-gpu=index,name,uui d,serial --format=csv index, name, uuid, serial 0, Tesla P4, GPU-fa974b1d-3c17-ed92-28d0-805c6d089601, 0325017070224
待驗(yàn)證,因?yàn)槲椰F(xiàn)在沒有GPU機(jī)器---已經(jīng)驗(yàn)證完成,按照上述操作可以在docker里面成功的驅(qū)動nvidia顯卡
感謝各位的閱讀!關(guān)于“docker19.03如何使用NVIDIA顯卡”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學(xué)到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點(diǎn)與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。