$ sudo apt-get update
2. 安裝包以允許通過HTTPS使用儲存庫:
$ sudo apt-get install \
apt-transport-https \
ca-certificates \
curl \
software-properties-common
3. 新增Docker的官方GPG金鑰:
$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
$ sudo apt-key fingerprint 0EBFCD88
4. 使用以下命令設定穩定儲存庫。即使您還想從邊緣或測試儲存庫安裝構建,您始終需要穩定的儲存庫。要新增邊緣或測試儲存庫,請在以下命令中的單詞stable之後新增單詞edge或test(或兩者)
sudo add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable"
注:$(lsb_release -cs)可被替代,Ubuntu18.04對應的是bionic,Ubuntu16.04對應的是xenial
此時有個坑,當新增錯誤時,在update會報錯。需要把錯誤的新增刪除,再update。
sudo apt-get update
a. 安裝最新版本的docker CE
$ sudo apt-get install docker-ce
b. 或安裝指定版本:
$ apt-cache madison docker-ce
docker-ce | 18.03.0~ce-0~ubuntu | https://download.docker.com/linux/ubuntu xenial/stable amd64 Packages
$ sudo apt-get install docker-ce=<VERSION>
$ docker -v
通過執行hello-world映像驗證是否正確安裝了Docker CE。
sudo docker run hello-world
Docker版本需滿足大於19.03,在這個基礎上安裝nvidia-container-toolkit即開啟Docker GPU加速。
基礎環境:Ubuntu 16.04/18.04, Debian Jessie/Stretch/Buster
# Add the package repositories
$ distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
$ curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add -
$ 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-get update && sudo apt-get install -y nvidia-container-toolkit
$ sudo systemctl restart docker
使用範例:
#### Test nvidia-smi with the latest official CUDA image
$ docker run --gpus all nvidia/cuda:9.0-base nvidia-smi
# Start a GPU enabled container on two GPUs
$ docker run --gpus 2 nvidia/cuda:9.0-base nvidia-smi
# Starting a GPU enabled container on specific GPUs
$ docker run --gpus '"device=1,2"' nvidia/cuda:9.0-base nvidia-smi
$ docker run --gpus '"device=UUID-ABCDEF,1"' nvidia/cuda:9.0-base nvidia-smi
# Specifying a capability (graphics, compute, ...) for my container
# Note this is rarely if ever used this way
$ docker run --gpus all,capabilities=utility nvidia/cuda:9.0-base nvidia-smi