在做项目的过程中,需要根据自己的需要对已有镜像创建的容器进行自定义修改。后来发现需要多个这样的自定义容器,那么其实可以写一个Dockerfile。但是我想着之后会在不同机器上做重复的工作,而且有些内容需要后面在容器中增加,比如nltk的punkt需要在python中download,甚至有可能download不了,需要手动下载复制过去,所以那不如索性用自定义容器生成镜像,并发表到docker hub上,之后可以随时在不同平台、服务器中拉取使用,免去了文件传输的复杂。
1、转化自定义容器为镜像参考:https://www.runoob.com/w3cnote/docker-use-container-create-image.html
https://www.jianshu.com/p/432316b415c0
(1)启动自定义容器
$ docker start# 启动已有自定义容器 $ docker exec -it /bin/bash # 进入容器 【容器内#】 exit # 退出容器,但不终止 # 我感觉后面两句不用运行,读者可以试试(因为两个参考链接都写了,我也就暂且写上)。感觉反正就是保证容器在运行就可以嘛,进入又退出没啥意义。如有理解错误,还望指正。
(2)生成相应的镜像
$ docker commit -m "" -a "" >
(3)查看是否生成成功
docker images2、自定义镜像上传到dockerhub
参考:https://www.cnblogs.com/51kata/p/5256436.html
(1)访问https://hub.docker.com新建一个Docker ID。
(2)终端登录Docker ID
$ docker login # Login with your Docker ID to push and pull images form Docker Hub.
若想退出登录:
docker logout
(3)上传到dockerhub
docker push/ > #若没有tag,默认为latest



