最近老板说项目需要docker部署,简单学习了docker之后,寻思是不是可以把经常配置的深度学习环境封装在docker中,然后即便换了电脑,编程环境还是一样的,所以春心涌动之后.
发现有一个已经集成好的几乎所有深度学习方法的docker仓库,如下所示:
这个仓库已经封装好的CUDA和cudnn,这样一般的电脑上只需要安装显卡驱动,其余的深度学习环境直接一键部署,再也不会两三天折腾环境了.官方页面如下:
Docker Hubhub.docker.com(1)于是,按照要求先安装docker:
Ubuntu Docker 安装www.runoob.com不同系统可以根据不同的指令安装,我是ubuntu18.04版本找了个第三方网站,尽量去官网根据教程安装.
(2)安装nivdia-docker
nvidia-dockergithub.com(3)根据deepo的教程pull deepo (国内可以选这三个源)
docker pull registry.docker-cn.com/ufoym/deepo
peizhior
docker pull hub-mirror.c.163.com/ufoym/deepo
or
docker pull docker.mirrors.ustc.edu.cn/ufoym/deepo
需要注意的是,我们需要不同的深度学习环境,所以按需pull不同的镜像,具体如下图:
比如,要所有集成深度学习环境的,可以选择all-jupyter-py36-cu100版本,例如:
docker pull docker.mirrors.ustc.edu.cn/ufoym/deepo:all-jupyter-py36-cu100
这里需要注意的是,第(2)步nivdia-docker的安装 需要选择cuda的版本号,这里cuda的版本号要一致.
全版本的镜像比较大 大概10g左右
下载好之后,按照教程运行:
docker run --runtime=nvidia --rm ufoym/deepo nvidia-smi
发现出现以下问题:
Error response from daemon: Unknown runtime specified nvidia.
(4)于是调研发现 是没有安装nvidia的运行环境,利用下面的教程安装:
NVIDIA/nvidia-container-runtimegithub.com安装完成后 大功告成,测试jupyter成功,这样便可以远程部署jupyter 或者随时迁移自己的深度学习系统了
想要配置这个docker的同学,还可以通过commit或者Dockerfile来进行进一步的配置.