欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

构建Pytroch-GPU镜像(基于cuda的nvidia-docker镜像)

程序员文章站 2022-04-30 19:29:36
0.前言可以直接拉取pytorch官方镜像docker pull pytorch但是该方法拉取的镜像基于conda安装的,如果需要调整cuda以及python版本会造成依赖被改变,并且创建的镜像过于庞大1.解决方法这里直接基于nvida/cuda,使用DockerFile构建一个轻便的镜像FROM nvidia/cuda:10.1-cudnn7-runtime-ubuntu18.04MAINTAINER zha# #LABEL version="1.0"# #指定系统编码ENV LANG...
  1. 前言

可以直接拉取pytorch官方镜像docker pull pytorch/pytorch:1.5-cuda10.1-cudnn7-runtime

docker pull pytorch/pytorch:1.5-cuda10.1-cudnn7-runtime
docker pull pytorch/pytorch:1.5-cuda10.1-cudnn7-decel

但是该方法拉取的镜像基于conda安装的,如果需要调整cuda以及python版本会造成依赖被改变,并且创建的镜像过于庞大(Python版本都是3.7,本人使用的一个源码需要Python3.6,最后导出的镜像居然有9.4G)

  1. 解决方法

直接基于nvida/cuda,使用DockerFile构建一个轻便的镜像docker build -t pytorch-gpu .

FROM nvidia/cuda:10.1-cudnn7-runtime-ubuntu18.04
MAINTAINER zha
# #LABEL version="1.0"
# #指定系统编码
ENV LANG C.UTF-8
EXPOSE 8080
RUN sed -i s:/archive.ubuntu.com:/mirrors.aliyun.com/ubuntu:g /etc/apt/sources.list
# #RUN sed -i s:/archive.ubuntu.com:/mirrors.tuna.tsinghua.edu.cn/ubuntu:g /etc/apt/sources.list
RUN cat /etc/apt/sources.list && apt-get clean && apt-get -y update --fix-missing
RUN apt-get -y install python3.6 python3-pip && ln -s /usr/bin/python3.6 /usr/bin/python && ln -s /usr/bin/pip3 /usr/bin/pip
RUN apt-get install -y libsm6 libxrender1 libxext-dev
# #安装需要的库
RUN pip install -i https://mirrors.aliyun.com/pypi/simple/ web.py torch==1.3.1 torchvision==0.4.2 opencv-python scipy flask
RUN apt-get clean && rm -r ~/.cache/pip
  1. 体积更小的镜像

如果镜像不需要后期维护,可以直接使用docker exec -it nvidia/cuda:10.1 /bin/bash进入镜像内部使用dockerfile内的指令构建完毕后使用docker commit指令由容器创建镜像。这样的创建的镜像由于只有一层,体积会更小。
注意:
该方法创建的镜像不包含构建时的信息,可能存在隐患(本人当前使用的场景不考虑后期维护,可以无视)


  • COPY指令与ADD指令类似,同样可以将本地文件拷贝到镜像内。
  • 但是ADD可以添加src为URL的源数据到镜像,COPY只能是本地数据。
  • docker build -t imageName .指令后面的.表示使用当前目录下的dockerfile构建镜像。

本文地址:https://blog.csdn.net/qq_27036771/article/details/107316314