docker commit 提交容器副本使之成为一个自定义的镜像
-a 作者
-m 提交信息
加上 当前修改并运行的容器id
加上 命名空间
加上 镜像的名字和版本号
docker commit -a=”zhy” -m=”tomcat without docs” 79f229042aae 12345/mytomcat:1.2
1.从Hub上下载tomcat镜像到本地并成功运行
大P是随机分配一个 主机暴露给外界访问的端口docker run -it -P tomcat //tomcat后面默认的8080不用加,暴露给外部的端口是随机的root@test 12345]# docker psCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES41ee92892122 tomcat "catalina.sh run" 38 seconds ago Up 32 seconds 0.0.0.0:49153->8080/tcp mystifying_knuth===================================================================docker run -it -p 7777:8080 tomcat小p是指定一个主机暴露给外界访问的端口 8888root@test 12345]# docker psCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES79f229042aae tomcat "catalina.sh run" 51 minutes ago Up 51 minutes 0.0.0.0:8888->8080/tcp cranky_wu
如果同时启动了两个暴露给外部端口不一样的tomcat,也可以同时访问,因为用的是两个不一样的容器
2.故意删除上一步镜像生产tomcat容器的文档
3.当前tomcat运行实例是一个没有文档内容的容器,
以它为模板commit一个没有doc的tomcat新镜像12345/mytomcat:1.2
镜像提交命令
-a 作者
-m 提交信息
加上 当前修改并运行的容器id
加上 命名空间
加上 镜像的名字和版本号
docker commit -a=”zhy” -m=”tomcat without docs” 79f229042aae 12345/mytomcat:1.2
[root@test 12345]# docker psCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES41ee92892122 tomcat "catalina.sh run" 38 seconds ago Up 32 seconds 0.0.0.0:49153->8080/tcp mystifying_knuth79f229042aae tomcat "catalina.sh run" 51 minutes ago Up 51 minutes 0.0.0.0:8888->8080/tcp cranky_wu//以当前没有doc文件夹的容器创建了一个新的镜像[root@test 12345]# docker commit -a="zhy" -m="tomcat without docs" 79f229042aae 12345/mytomcat:1.2sha256:9c0ca2221a792b67761611d300fe3b80805d14383fd15d72e24f6651fe223423[root@test 12345]# docker imagesREPOSITORY TAG IMAGE ID CREATED SIZE12345/mytomcat 1.2 9c0ca2221a79 21 seconds ago 650MBtomcat latest feba8d001e3f 4 weeks ago 649MBcentos latest 300e315adb2f 5 weeks ago 209MB
4.启动没有doc的新镜像并和原来的对比
[root@test 12345]# docker psCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES8c1185676d94 12345/mytomcat:1.2 "catalina.sh run" 23 seconds ago Up 21 seconds 0.0.0.0:7777->8080/tcp compassionate_torvalds[root@test 12345]# docker exec -it 8c1185676d94 /bin/bashroot@8c1185676d94:/usr/local/tomcat# lsBUILDING.txt NOTICE RUNNING.txt lib temp workCONTRIBUTING.md README.md bin logs webappsLICENSE RELEASE-NOTES conf native-jni-lib webapps2root@8c1185676d94:/usr/local/tomcat# cd webappsroot@8c1185676d94:/usr/local/tomcat/webapps# lsROOT examples host-manager manager //没有doc文件夹root@8c1185676d94:/usr/local/tomcat/webapps#
容器运行成功
新的镜像里没有doc文件夹,报404

