官方建議使用他們的docker鏡像,所以我們按照他們建議的來。
環境搭建其實很簡單,其實不需要在宿主機上配置cuda
及cudnn
,只需要保證宿主機上的cuda
大於docker鏡像中的就可以了。
所以我們直接安裝最新版的顯卡驅動就可以了,最重要的是下面的三步,對於想嘗鮮的同學來說,這個環境是最重要的,因為不管你想部署CPU
還是GPU
版本的,
PaddleHub Serving
方式還是PaddleServing
,我都准備好了Dockerfile
文件,對應的模型文件及三方庫我也都放在自己的倉庫里了,(PS:直接使用官方的Dockerfile
是部署不起來的,PaddleServing
版本官方目前也沒出Dockerfile
)
-
1.安裝新版docker>=19.03
-
2.安裝
NVIDIA
驅動 -
3.安裝
NVIDIA Container Runtime
下面正式開始:
一、安裝Docker
-
一鍵安裝腳本,安裝參考:
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
-
版本檢查(需大於
19.03
):docker -v
-
更換源:
echo "\
{
\"registry-mirrors\": [
\"https://kfwkfulq.mirror.aliyuncs.com\",
\"https://2lqq34jg.mirror.aliyuncs.com\",
\"https://pee6w651.mirror.aliyuncs.com\",
\"https://registry.docker-cn.com\",
\"http://hub-mirror.c.163.com\"
],
\"dns\": [
\"8.8.8.8\",
\"8.8.4.4\"
]
}" > /etc/docker/daemon.json && /etc/init.d/docker restart
二、安裝NVIDIA
驅動
-
不要使用
ppa
方式安裝,這種方式安裝的驅動版本較低 -
卸載已安裝的
nvidia
驅動:
apt-get --purge remove *nvidia* *cublas* cuda* -y && apt autoremove -y
-
在官網檢索並下載驅動文件,比如我下載的文件為
NVIDIA-Linux-x86_64-465.31.run
-
禁用
nouveau
echo "\ blacklist nouveau options nouveau modeset=0 ">>/etc/modprobe.d/blacklist.conf
-
使生效:
update-initramfs -u
,完成后一定要重啟一下系統 -
安裝驅動文件:
若安裝了圖形界面,
Ctrl+Alt+F2
先打開一個TTY
,然后執行如下命令:service lightdm stop sh NVIDIA-Linux-x86_64-465.31.run -no-x-check -no-nouveau-check -no-opengl-files
安裝過程中如果有些選項,直接默認就可以了
-
檢查:
nvidia-smi
能顯示出信息基本上就可以了
三、安裝NVIDIA Container Runtime
,官方文檔詳見這里
添加gpgkey
(國內環境,最好掛代理):
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-runtime
重啟docker:
systemctl restart docker.service