官方建議使用他們的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 -
禁用
nouveauecho "\ 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
