[Ubuntu]:Docker安装以及cuDNN环境

默认的Docker环境不支持GPU,需要安装nvidia-docker的环境。

环境:

Ubuntu 16.04 LTS

Nvidia Driver Version: 396.26

安装Docker

这里以安装docker-18.0.6-ce为例,打开https://docs.docker.com/install/  可以看到详细教程,主要是:

卸载旧软件(没有可以忽略)

sudo apt-get remove docker docker-engine docker.io

下载deb

以下载deb包安装为例,根据自己的Ubuntu版本

去https://download.docker.com/linux/ubuntu/dists/ 选择对应自己Ubuntu发行版的源(这里我的是16.04 LTS,代号Xenial),docker-ce的安装包就是https://download.docker.com/linux/ubuntu/dists/xenial/pool/stable/amd64/ 

浏览器下载即可,也可以在bash用wget下载

wget https://download.docker.com/linux/ubuntu/dists/xenial/pool/stable/amd64/docker-ce_18.06.0~ce~3-0~ubuntu_amd64.deb

使用dpkg安装即可

sudo dpkg -i docker-ce_18.06.0\~ce\~3-0\~ubuntu_amd64.deb
sudo systemctl start docker 
sudo docker -v

每次使用docker都需要sudo很麻烦,如何省掉这一步可以参考https://docs.docker.com/install/linux/linux-postinstall/#manage-docker-as-a-non-root-user 

更换docker源

创建或者修改 /etc/docker/daemon.json文件

sudo vim /etc/docker/daemon.json #sudo vim 没有对应文件会自动创建

修改为如下形式:

{
    "registry-mirrors": ["http://hub-mirror.c.163.com"],
    "insecure-registries": []
}

这里我用的是网易源,可以用豆瓣或者中科大等源代替

重启docker

sudo systemctl restart docker

至此docker安装完成

安装Nvidia-Docker

完整安装方法在https://github.com/NVIDIA/nvidia-docker ,注意实机需要正确安装驱动,可以看

[Ubuntu]:安装&卸载NVIDIA CUDA及驱动(深度学习)

# If you have nvidia-docker 1.0 installed: we need to remove it and all existing GPU containersdocker volume ls -q -f driver=nvidia-docker | xargs -r -I{} -n1 docker ps -q -a -f volume={} | xargs -r docker rm -f
sudo apt-get purge -y nvidia-docker

# Add the package repositories
curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add -

distribution=$(. /etc/os-release;echo $ID$VERSION_ID)

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

# Install nvidia-docker2 and reload the Docker daemon configuration
sudo apt-get install -y nvidia-docker2
sudo pkill -SIGHUP dockerd

# Test nvidia-smi with the latest official CUDA image
docker run --runtime=nvidia --rm nvidia/cuda nvidia-smi

安装完成后,使用nvidia-docker启动cuDNN环境即可,docker会从docker源获取指定tag的cuDNN环境,可以根据需要选择对应版本,详情可以查看(https://hub.docker.com/r/nvidia/cuda/)

使用docker pull拉取需要的镜像,这里以CUDA 9.0为例,runtime只包含运行时环境,devel会有CUDA Toolkit集成在内,方便开发者的使用

sudo docker pull nvidia/cuda:9.0-cudnn7-devel-ubuntu16.04
sudo nvidia-docker run -it nvidia/cuda:9.0-cudnn7-devel-ubuntu16.04

就可以进入带完整CUDA 9.0 + cuDNN7 + ubuntu16.04的虚机环境了

,可以在此基础上继续安装主流深度学习框架,比如paddlepaddle、pyTorch、Tensoflow等等。

关于docker的使用入门可以查阅官方相关文档。

欢迎去我的博客参观

你可能感兴趣的:(docker,深度学习,Ubuntu)