安裝docker-ce
參考這篇博文:
https://www.cnblogs.com/TsingJyujing/p/7908520.html
!注意:如果是linux mint的發行版本号與ubuntu不同,是以需要把$(lsb_release -cs) 改為xenial
安裝nvidia-docker(解決方法在最後面)
https://github.com/NVIDIA/nvidia-docker
這是官方文檔
## If you have nvidia-docker 1.0 installed: we need to remove it and all existing GPU containers If you have nvidia-docker 1.0 installed: we ne
docker volume ls -q -f driver=nvidia-docker | xargs -r -I{} -n1 docker ps -q -a -f volume={} | xargs -r docker rm -f
sudo apt-get purge -y nvidia-docker
# Add the package repositories
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-get update
# Install nvidia-docker2 and reload the Docker daemon configuration
sudo apt-get install -y nvidia-docker2
sudo pkill -SIGHUP dockerd
# Test nvidia-smi with the latest official CUDA image
docker run --runtime=nvidia --rm nvidia/cuda nvidia-smi
但是安裝過程中會出現
sudo apt-get update
E: 軟體源清單 /etc/apt/sources.list.d/nvidia-docker.list 第 行中的類别 “<!DOCTYPE” 無法識别
E: 無法讀取源清單。
觀察發現原因是
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
指令輸出結果為一個html檔案與要求檔案不符
為什麼會是html檔案呢?
我們觀察參數:
distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
echo $distribution
linuxmint19
原來如此!!
原指令是按照linuxmint19的指令下載下傳的,而對應的官方沒有這個檔案,是以下成了一個html檔案,而這個html無法識别。
由于linux mint基于ubuntu,是以我們下載下傳ubuntu對應版本。
那ubuntu對應的$distribution是什麼呢?
我們啟用一個ubuntu的docker鏡像:
sudo docker run -it ubuntu
Unable to find image 'ubuntu:latest' locally
latest: Pulling from library/ubuntu
c64513b74145: Pull complete
b8b12bad90: Pull complete
c5d85cf7a05f: Pull complete
b6b268720157: Pull complete
e12192999ff1: Pull complete
Digest: sha256:f119dc0737f57f704ebecac8a6d8477b0f6ca1ca0332c7ee1395ed2c6a82be7
Status: Downloaded newer image for ubuntu:latest
root@d7af2b19b653:/# distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
root@d7af2b19b653:/# echo $distribution
ubuntu18.
root@d7af2b19b653:/# exit
exit
是以把$distribution替換成ubuntu18.04就ok了
curl -s -L https://nvidia.github.io/nvidia-docker/ubuntu18/nvidia-docker.list | \
sudo tee /etc/apt/sources.list.d/nvidia-docker.list
運作正常!