[docker]Docker19.03初探

19.03版本無需安裝nvidia-docker

  • Verify that NVIDIA card is detected 檢查顯卡
$ 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
  •  Installing NVIDIA drivers first 安裝驅動,如果驅動已經安裝跳過此步驟,安裝驅動後重啓
$ apt-get install ubuntu-drivers-common \
	&& sudo ubuntu-drivers autoinstall

$ reboot
  •  Installing NVIDIA Container Runtime 安裝Runtime
$ 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

$ apt-get install nvidia-container-runtime

$ which nvidia-container-runtime-hook
/usr/bin/nvidia-container-runtime-hook

錯誤:E: 無法下載 http://ppa.launchpad.net/fcitx-team/nightly/ubuntu/dists/xenial/main/binary-amd64/Packages 404 Not Found 

解決方法:將對應的ppa刪除即可

第一步:切換到對應的ppa目錄:

cd /etc/apt/sources.list.d

第二步:在該目錄下ls,即可以看到對應的無法下載的fcitx-team-ubuntu-nightly-xenial.list,刪除該.list即可(安全起見,可以進行添加後綴.bak的備份)

命令如下:

mv fcitx-team-ubuntu-nightly-xenial.list fcitx-team-ubuntu-nightly-xenial.list.bak

具體如下圖所示:

第三步:檢查問題是否解決

在終端中輸入命令:

sudo apt-get update

查看是否會出現如圖1所示的問題

  •  Installing Docker 19.03 Beta 3 Test Build
$ curl -fsSL https://test.docker.com -o test-docker.sh 

$ sh test-docker.sh
  •  Verifying Docker Installation 
$ docker version
Client:
 Version:           19.03.0-beta3
 API version:       1.40
 Go version:        go1.12.4
 Git commit:        c55e026
 Built:             Thu Apr 25 02:58:59 2019
 OS/Arch:           linux/amd64
 Experimental:      false
Server:
 Engine:
  Version:          19.03.0-beta3
  API version:      1.40 (minimum version 1.12)
  Go version:       go1.12.4
  Git commit:       c55e026
  Built:            Thu Apr 25 02:57:32 2019
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.2.5
  GitCommit:        bb71b10fd8f58240ca47fbb579b9d1028eea7c84
 runc:
  Version:          1.0.0-rc6+dev
  GitCommit:        2b18fe1d885ee5083ef9f0838fee39b62d653e30
 docker-init:
  Version:          0.18.0
  GitCommit:        fec3683

 錯誤:”Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get http://%2Fvar%2Frun%2Fdocker.sock/v1.26/images/json: dial unix /var/run/docker.sock: connect: permission denied“

解決方法1:使用sudo獲取管理員權限,運行docker命令

解決方法2:docker守護進程啓動的時候,會默認賦予名字爲docker的用戶組讀寫Unix socket的權限,因此只要創建docker用戶組,並將當前用戶加入到docker用戶組中,那麼當前用戶就有權限訪問Unix socket了,進而也就可以執行docker相關命令。這一步驟需要重啓電腦

sudo groupadd docker     #添加docker用戶組
sudo gpasswd -a $USER docker     #將登陸用戶加入到docker用戶組中
newgrp docker     #更新用戶組
docker ps    #測試docker命令是否可以使用sudo正常使用
  • Verifying –gpus option under docker run 
$ docker run --help | grep -i gpus
      --gpus gpu-request               GPU devices to add to the container ('all' to pass all GPUs)
  • Running a Ubuntu container which leverages GPUs
$ docker run -it --rm --gpus all ubuntu nvidia-smi
Unable to find image 'ubuntu:latest' locally
latest: Pulling from library/ubuntu
2746a4a261c9: Pull complete 
4c1d20cdee96: Pull complete 
0d3160e1d0de: Pull complete 
c8e37668deea: Pull complete 
Digest: sha256:250cc6f3f3ffc5cdaa9d8f4946ac79821aafb4d3afc93928f0de9336eba21aa4
Status: Downloaded newer image for ubuntu:latest
Mon Dec 23 10:18:40 2019       
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 430.40       Driver Version: 430.40       CUDA Version: N/A      |
|-------------------------------+----------------------+----------------------+
| 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 1080    Off  | 00000000:01:00.0  On |                  N/A |
| 43%   37C    P0    40W / 180W |    266MiB /  8116MiB |     35%      Default |
+-------------------------------+----------------------+----------------------+
                                                                               
+-----------------------------------------------------------------------------+
| Processes:                                                       GPU Memory |
|  GPU       PID   Type   Process name                             Usage      |
|=============================================================================|
+-----------------------------------------------------------------------------+

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章