美文网首页
用dockerfile定制pytorch docker环境

用dockerfile定制pytorch docker环境

作者: blair_liu | 来源:发表于2021-01-06 13:18 被阅读0次

显卡驱动、镜像cuda版本、pytorch cuda版本三者对应

查看驱动版本

nvidia-smi查看显卡驱动版本


驱动版本

可以看到显卡驱动版本为:450.80.02

查看该驱动版本支持的cuda版本

https://docs.nvidia.com/cuda/cuda-toolkit-release-notes/index.html

该网址下第二个表格


cuda支持表

可以看到最高支持到cuda版本为:11.0

查看pytorch是否支持该cuda版本

https://pytorch.org/
pytorch

可以看到是支持的

找该cuda版本镜像

https://hub.docker.com/r/nvidia/cuda/tags?page=1&ordering=last_updated

搜索:11.0-cudnn8-runtime-ubuntu18.04
测试系统版本为ubuntu18.04,于是就下18.04的


cuda镜像

复制下载命令下载镜像

docker pull nvidia/cuda:11.0-cudnn8-runtime-ubuntu18.04

Dockerfile

FROM nvidia/cuda:11.0-cudnn8-runtime-ubuntu18.04

MAINTAINER casia

COPY get-pip.py get-pip.py

RUN \
    mv /etc/apt/sources.list.d /etc/apt/sources.list.d.bak && \
    apt-get update -y && \
    apt-get install -y python3 && \
    apt install -y python3-distutils && \
    ln -s /usr/bin/python3.6 /usr/bin/python && \
    python get-pip.py && \
    rm get-pip.py && \
    pip install torch==1.7.1+cu110 torchvision==0.8.2+cu110 torchaudio===0.7.2 -f https://download.pytorch.org/whl/torch_stable.html && \
    pip config set global.index-url https://repo.huaweicloud.com/repository/pypi/simple && \
    pip install scikit-learn==0.23.2 tqdm==4.51.0 opencv-python==4.4.0.46 matplotlib==3.3.3

dockerfile同路径下要有get-pip.py,之所以要这个是因为这样安装pip是最精简的,其他方式十分冗余
get-pip.py获取地址:

https://bootstrap.pypa.io/get-pip.py

右键另存为即可

创建环境

docker build -t cuda11.0-pytorch:v1 .
ls查看
image.png
docker images 

就可以查看到了刚定制的镜像

保存镜像

docker save cuda11.0-pytorch:v1 | gzip -c > cuda11.0-pytorch.tar.gz

注:为什么选runtime

仔细看dockerhub nvidia/cuda 有base runtime devel
看官方给的说明

https://github.com/NVIDIA/nvidia-docker/wiki/CUDA
说明

大概意思就是
base:啥也没有,东西自己装
runtime:基础用的都有
devel:基础用的+调试
镜像大小的一个比一个大,所以就选runtime

最后的反转

后面我发现pytorch有官方的镜像,官方5.55G,我的8.87G明显官方的小很多

https://hub.docker.com/r/pytorch/pytorch/tags?page=1&ordering=last_updated

相关文章

网友评论

      本文标题:用dockerfile定制pytorch docker环境

      本文链接:https://www.haomeiwen.com/subject/lednoktx.html