docker安装到指定目录_在深度学习中使用docker--例子

本文通过安装RGMP的例子来说明如何在深度学习中利用docker。通过不同的安装方法也能更好的理解docker,nvidiadocker,docker-compose。

RGMP是发表在CVPR2018上的关于视频物体分割的方法。下载地址:seoungwugoh/RGMP

关于Docker的简单说明和安装方法:CJ1019:Unbuntu 16.04安装Docker

1,直白方式安装

1.1,下载RGMP,并存储在~/RGMP-master目录下。

1.2,下载DAVIS-2017,我直接把DAVIS放在RGMP-master目录下,因为这样在挂载到docker-container时会比较方便。

1.3,RGMP是以pytorch为基础的,因此首先要下载pytorch。这里注意要下载有cuda10版本的pytorch。启动的同时注意挂载RGMP-master目录到docker-container。其命令如下:

156ff2c913c70833132e4c3923e04afb.png
--rm 表示在结束container运行后,立刻删除container。不然的话还需要手动删除
-it 表示以交互方式启动
--name myRgmp 表示给启动的container一个名字,且其名字为myRgmp
-v 将本地目录挂载到docker-container中
pytorch/pytorch 为需要的镜像。
nightly-runtime-cuda10.0-cudnn7 为指定的镜像标签。

这里注意,我一开始安装的时候,因为Host的GPU的驱动版本太低,不能使用cuda10,所以运行他的代码时会报错。更新了Host的GPU驱动之后可以解决这个问题。更新方法附在最后。

这里还要注意,启动方式要么为nvidia-docker;要么为docker run --runtime=nvidia。

pytorch的镜像启动之后,进去pytorch的系统,示意图如下:

0d562d638bd55bd2536d79f6e76a1f5e.png

1.4,在pytorch的系统中安装RGMP所需要的依赖

1.5,测试执行

python run.py -MO

1.6,把修改过的镜像保存到本地以备下次使用

819edb9431b0e74f4ba8cf45b3f5b545.png
镜像保留在本地的命令为:docker commit conatiner_id user_specific_image_name

docker commit会把镜像保存在docker内置的目录,不可修改。可以用命令行启动,删除镜像。

2,使用dockerfile方式安装

2.1 定义dockerfile

# dockerfile
FROM pytorch/pytorch:nightly-runtime-cuda10.0-cudnn7

RUN apt-get update -y 
FROM: 指定所需要的基础镜像
RUN:执行命令
COPY:复制requirements.txt到指定目录。

2.2 定义依赖

# requirements.txt
torchvision
opencv-python

2.3 定义doker-compose.yml

"2.3"

services:
    pytorch:
        build: .
        runtime: nvidia
        volumes:
            - ~/RGMP-master:/workspace
        stdin_open: 
version:
services: pytorch: 表明了应用的名字是 pytorch
runtime:应用所需要的runtime
volumes:挂载本地目录到docker-container
stdin_open: true& tty: true:指明交互输入输出

2.4 启动

docker-compose run --rm pytorch

注意这里要启动的应用的名字(pytorch)要与docker-compose.yml中定义的services的名字一直。

2.5 测试执行

python run.py -MO

2.6 保存

此时会自动保存制作好的镜像到本地(镜像名为docker-compose.yml所在文件夹名+基础镜像名)。

3,更新GPU驱动

# uninstall
sudo apt-get --purge remove nvidia-* 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值