利用docker拉取Nvidia/cuda官方镜像,部署深度学习环境
看完这篇博文,可以查看我总结的另一篇博文教程:利用docker部署深度学习环境摆脱操作系统版本限制与cuda版本限制
https://blog.csdn.net/guoqingru0311/article/details/130378511
1、拉取Nvidia/cuda官方镜像
docker pull nvidia/cuda:10.0-base
NVIDIA官方提供的docker镜像nvidia/cuda,里面已经编译安装了cuda,但需完善并安装cudnn.注意:这里的cuda版本要跟宿主机显卡驱动匹配.(本次安装的版本是cuda10.0)
2、生成容器
nvidia-docker run -it --runtime=nvidia -v /宿主机绝对路径目录:/容器内目录 --name 容器名 镜像名 /bin/bash
创建镜像完毕后,进入镜像,输入nvidia-smi,如果输出下图中绿框内的指令,则表明自己的cuda容器创建成功。
3、在容器内安装深度学习环境
(1)安装所需的依赖包:
#!/bin/bash
set -e
apt-get update
#安装vim
#apt-get -y install vim
#解决vim中文乱码
#vim /etc/vim/vimrc
#set fileencodings=utf-8,gbk,utf-16le,cp1252,iso-8859-15,ucs-bom
#set termencoding=utf-8
#set encoding=utf-8
#
#安装sqlite3
apt-get install libsqlite3-dev
apt-get -y install gcc
#解决ssl No module named _ssl
apt-get install libssl-dev -y
#
apt-get install make
apt-get -y install zlib*
#安装wget
apt-get -y install wget
#下载python
wget https://www.python.org/ftp/python/3.6.5/Python-3.6.5.tgz
#解压tgz
tar -xvzf Python-3.6.5.tgz
#
cd Python-3.6.5
./configure --with-ssl
make && make install
ln -sf /usr/local/bin/python3 /usr/bin/python
#解决opencv 报错
apt-get -y install libgl1-mesa-glx
apt-get install -y libglib2.0-dev
#删除安装文件
#rm -R Python*
#升级pip
python3 -m pip install --upgrade pip
pip3 install -r requirements.txt -i https://pypi.douban.com/simple
#mysql
#cd /home
#wget https://dev.mysql.com/get/mysql-apt-config_0.8.15-1_all.deb
#中文编码问题
export LANG=C.UTF-8
#解决cv2 问题
#apt-get -y install libgl1-mesa-glx
#python -V
#升级pip
#python -m pip install --upgrade pip
(2)完善cuda和安装cudnn
apt install cuda-toolkit-10-0
将cudnn解压,执行以下命令:
sudo cp cuda/include/cudnn.h /usr/local/cuda/include/
sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64/
sudo chmod a+r /usr/local/cuda/include/cudnn.h
sudo chmod a+r /usr/local/cuda/lib64/libcudnn*
安装完毕后,可通过以下指令查看是否安装成功:
cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2
输出如下所示:
python3 -m pip install paddlepaddle-gpu==1.8.5.post107 -i https://pypi.doubanio.com/simple/
pip3 install --default-timeout=100 -i https://pypi.doubanio.com/simple/ imgaug
解决中文乱码问题出现的报错,将一下指令加入到~/.bashrc 文件中
export LANG=C.UTF-8