提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
文章目录- 前言
- 一、目标
- PS:最后那个.不能忘了
- 二、方法
- 1.以gdal镜像作为基准(推荐)
- 2.以pytorch镜像作为基准
- 总结
前言
参考docker官方文档,利用Dockerfile文件,制作一个自己的基准镜像。
一、目标
pytorch官方镜像下载下来以后不能直接使用,还需要自己装一些东西。建一个容器就得装一次,太麻烦了。所以学习了一下自己定制基准镜像的方法。
我要用到的python库主要有三个:pytorch、opencv、gdal,其他库可以按需要自行增加。
进入到Dockerfile所在的文件夹,文件夹中只保留这一个文件,否则会将其他文件一起打包到镜像,浪费时间和空间。通过Dockerfile构建镜像的命令如下:
docker build -t pytorch:1.9.0 .
-t 输入标签,也可以写成-tag,其中pytorch为镜像名,1.9.0为镜像版本号。
PS:最后那个.不能忘了 二、方法 1.以gdal镜像作为基准(推荐)构建Dockerfile文件,内容如下:
# syntax=docker/dockerfile:1
From osgeo/gdal:ubuntu-full-latest
WORKDIR /workdir
ENV DEBIAN_FRonTEND noninteractive
RUN apt update && apt install -y libglib2.0-dev && apt install
-y libgl1-mesa-glx && apt install -y python3.8 && apt install -y python3-pip && apt-get cleanRUN pip3 install opencv-python && pip3 install torch1.9.1+cu111
torchvision0.10.1+cu111 torchaudio==0.9.1 -f
https://download.pytorch.org/whl/torch_stable.html
构建好的镜像约8.76G。
2.以pytorch镜像作为基准构建Dockerfile文件,内容如下:
# syntax=docker/dockerfile:1
From pytorch/pytorch:1.9.0-cuda11.1-cudnn8-devel
WORKDIR /workdir
ENV DEBIAN_FRonTEND noninteractive
RUN apt update && apt install -y libglib2.0-dev && apt install
-y libgl1-mesa-glx && apt-get cleanRUN apt install -y software-properties-common && add-apt-repository
ppa:ubuntugis/ppa && apt install -y gdal-bin && apt install -y
libgdal-dev && export CPLUS_INCLUDE_PATH=/usr/include/gdal &&
export C_INCLUDE_PATH=/usr/include/gdal && pip3 install
gdal==2.4.2 && pip3 install opencv-python
构建好的镜像约18G。
总结推荐使用gdal镜像作为基准有两个好处:1)制作好的镜像体积小,节省空间;2)可以使用最新的gdal,通过第二种方法制作镜像,虽然也可以将gdal打包进去,但是gdal版本限制在了2.4.2,且过程比较繁琐。



