Docker 让开发者可以打包他们的应用以及依赖包到一个可移植的容器中, 然后发布到任何流行的 Linux 机器上, 便可以实现虚拟化.
1 安装 docker
参考官网 https://mirrors.tuna.tsinghua.edu.cn/help/docker-ce/
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository \
"deb [arch=amd64] https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/ubuntu \
$(lsb_release -cs) \
stable"
sudo apt-get update
sudo apt-get install docker-ce
docker -v //查看是否安装成功
2 安装 nvidia-docker
普通的docker环境不支持gpu, 因此我们需要一个nvidia-docker的版本.
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
sudo apt-get install -y nvidia-docker2
sudo pkill -SIGHUP dockerd
nvidia-docker -v //查看是否安装成功
3 拉取镜像
sudo nvidia-docker run --runtime=nvidia --rm nvidia/cuda:9.0-base nvidia-smi
NVIDIA官方提供的docker镜像nvidia/cuda, 里面已经编译安装了CUDA, 但需完善. 注意:这里的cuda版本要跟宿主机显卡驱动匹配.
//生成容器
sudo nvidia-docker run -it nvidia/cuda:9.0-base
完善CUDA
apt install cuda-toolkit-9-0
参考了博文1, 表示感谢!
在容器里安装深度学习环境
以安装 python为例. 由于初始系统很小,很多常见工具都没有预装.
Docker下的ubuntu 安装python3.6
直接安装 apt-get install python3.6, 可能会失败. 这时执行下列命令:
apt-get install python-software-properties
apt-get install software-properties-common
添加ppa到系统
add-apt-repository ppa:jonathonf/python-3.6
安装
apt-get update
apt-get install python3.6
修改python命令默认python3.6
查看python 命令指向
ls -l /usr/bin | grep python
删除默认指向
rm /usr/bin/python
建立python到python3.6新的软链接
ln -s /usr/bin/python3.6 /usr/bin/python
安装pip3
直接安装python3版本pip
apt-get install python3-pip
建立pip到pip3的软连接
ln -s /usr/bin/pip3 /usr/bin/pip
感谢博文2
如果建立pip到pip3的软连接后, pip出错. 继续执行下面的命令, 完成pip升级.
查看pip 指向
pip -V
如果pip还是python3.5的pip,继续执行命令.
删除pip
apt-get remove python3-pip
apt-get autoremove
安装pip
apt-get install python3-pip
升级pip
python3.6 -m pip install --upgrade pip
Docker下的ubuntu安装 pytorch
安装torch=0.4.0
注意名称: cu80表示CUDA8.0, torch-0.4.0表示版本, cp36 表示python3.6, linux_x86_64表示32位和64位兼容
pip install http://download.pytorch.org/whl/cu80/torch-0.4.0-cp36-cp36m-linux_x86_64.whl
pip install torchvision==0.2.0
添加清华源安装
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple http://download.pytorch.org/whl/cu80/torch-0.4.0-cp36-cp36m-linux_x86_64.whl
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple torchvision==0.2.0