這篇已經Out了,以[筆記] Ubuntu 18.04安裝Docker CE及NVIDIA Container Toolkit流程為准。
Docker的好處之一,就是在Container里面可以隨意瞎搞,不用擔心弄崩Host的環境。
而nvidia-docker2
的好處是NVidia幫你配好了Host和Container之間的CUDA相關的鏈接,讓你可以直接在Container里面使用GPU。
安裝環境
- OS:Ubuntu 18.04 64 bit
- 顯卡:NVidia GTX 1080
- CUDA:10.0
- cnDNN:7.4
任務:安裝Docker CE
及nvidia-docker2
,以便后期開展深度學習
配置Docker源
# 更新源
$ sudo apt update
# 啟用HTTPS
$ sudo apt install -y \
apt-transport-https \
ca-certificates \
curl \
gnupg-agent \
software-properties-common
# 添加GPG key
$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
# 添加穩定版的源
$ sudo add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable"
安裝Docker CE
# 更新源
$ sudo apt update
# 安裝Docker CE
$ sudo apt install -y docker-ce
如果這種方式安裝失敗,也有解決方案。
報錯時屏幕上會顯示下載失敗的deb文件,想辦法下載下來,然后挨個手動安裝就好。
此時我需要下載的是下面三個文件:
- containerd.io_1.2.6-3_amd64.deb
- docker-ce-cli_19.03.03-0ubuntu-bionic_amd64.deb
- docker-ce_19.03.03-0ubuntu-bionic_amd64.deb
手動依次安裝:
$ sudo dpkg -i containerd.io_1.2.6-3_amd64.deb
$ sudo dpkg -i docker-ce-cli_19.03.0~3-0~ubuntu-bionic_amd64.deb
$ sudo dpkg -i docker-ce_19.03.0~3-0~ubuntu-bionic_amd64.deb
驗證Docker CE
如果出現下面的內容,說明安裝成功。
$ sudo docker run hello-world
Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
1b930d010525: Pull complete
Digest: sha256:2557e3c07ed1e38f26e389462d03ed943586f744621577a99efb77324b0fe535
Status: Downloaded newer image for hello-world:latest
Hello from Docker!
This message shows that your installation appears to be working correctly.
To generate this message, Docker took the following steps:
1. The Docker client contacted the Docker daemon.
2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
(amd64)
3. The Docker daemon created a new container from that image which runs the
executable that produces the output you are currently reading.
4. The Docker daemon streamed that output to the Docker client, which sent it
to your terminal.
To try something more ambitious, you can run an Ubuntu container with:
$ docker run -it ubuntu bash
Share images, automate workflows, and more with a free Docker ID:
https://hub.docker.com/
For more examples and ideas, visit:
https://docs.docker.com/get-started/
配置nvidia-docker2
源
# 添加源
$ curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add -
$ distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
$ curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | \
sudo tee /etc/apt/sources.list.d/nvidia-docker.list
# 更新源
$ sudo apt update
安裝nvidia-docker2
# 安裝nvidia-docker2
$ sudo apt install -y nvidia-docker2
# 重啟Docker daemon
$ sudo pkill -SIGHUP dockerd
驗證nvidia-docker2
$ sudo nvidia-docker run --rm nvidia/cuda nvidia-smi
能看到顯卡信息就說明OK了,當前image是基於Ubuntu 18.04的。