综述:为bm单位做事的时候总是有这样的需求,将代码的环境在公网下配置好,封装成docker去bm单位的离线服务器上训练。重新制作一个docker又比较麻烦,希望直接将配好的环境移植到docker中封装。
第一步,
安装docker,并用 docker pull continuumio/anaconda3 指令在docker Hub上下载好装载有anaconda3的镜像。
第二步,
运用 docker run 指令在 continuumio/anaconda3 镜像的基础上创建容器并运行,具体可自行搜索教学博文,不再赘述。
第三步,
docker start container_name 运行容器
docker contain continuumio/anaconda3 链接容器
在容器中输入 whereis anaconda ,查找anaconda所在路径:anaconda: /opt/conda/bin/anaconda
第四步,
在查找到的anaconda路径下, cd /opt/conda/envs, 此时还没有创建环境,ls为空。
新建一个终端,查找到系统内安装的anaconda3环境路径,一般在your_anaconda3_path/envs,这里有你创建好的环境。
第五步,
docker cp your_anaconda3_path/envs/envs_name container_name:/opt/conda/envs 通过docker cp指令,将系统中的环境全部复制到docker的anaconda3环境路径下,此时docker中的anaconda已经可以使用配好的环境了,可以用 source activate 指令自行证实一下。
第六步,
docker commit container_name image_name 运用 docker commit 指令将运行的容器保存为镜像。
第七步,
docker save image_name -o 压缩包名称 将镜像保存下来成一个压缩包。
至此,封装完成。