官方建议使用他们的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