今天给大家分享的内容是如何提交自己的镜像。
一、镜像提交命令docker commit # 提交容器成为一个新的副本 # 命令和git原理相似 docker commit -m"提交的描述信息" -a="作者" 容器id 目标镜像名:[TAG] # -m "……", -a "……"谁前谁后无所谓二、从部署tomcat到提交自己的tomcat镜像的详细过程
如果大家之前没有动手部署过tomcat的话,我带大家从部署tomcat开始,到修改tomcat内部文件,再到提交自己的tomcat镜像。
第一步:下载tomcat镜像:docker pull tomcat第二步:查看tomcat镜像是否下载成功:
docker images第三步:暴露端口,在下载的tomcat镜像层上建立tomcat01容器层
docker run -d -p 3355:8080 --name tomcat01 tomcat
注意:上面的命令中-d改为-it也可以,但是不建议大家改为-it,tomcat01是我们新建的容器
此时,由于我们下载的tomcat镜像为最小镜像,webapps是空的,访问tomcat01在宿主机上映射的3355端口会出现404错误。
第四步:修改tomcat01为了是我们新建的tomcat01容器直接可用,我们需要进行拷贝工作,首先进入tomcat01容器内部(进入容器时,只能以交互式方式进入,所以只能用-it,不能用-p)
docker exec -it tomcat01 /bin/bash
进入容器后,将webapps.dist目录下的全部应用拷贝到webapps目录下
拷贝完成,再次访问主机的3355端口,此时,可以成功访问tomcat
第五步:停止容器tomcat01docker stop tomcat01的id第六步:上传tomcat01镜像
到现在,我们的tomcat01容器层和tomcat镜像层就一起构成一个新的镜像tomcat01,接下来我们把tomcat01镜像上传。
docker commit -m"添补了webapps下的内容" -a="sweetcandy" tomcat01:1.0第七步:查看tomcat01镜像是否上传成功
docker images三、实战代码:
# 实战测试 docker pull tomcat # 拉取镜像 docker run -d -p --name 3355:8080 tomcat01 tomcat # 运行容器 docker images docker ps # 查看容器是否运行 docker exec -it tomcat01 /bin/bash # 进入容器 ls -a cd webapps # 2.发现这个默认的tomcat没有webapps应用,需要把需要的基本文件拷贝到webapps中 cd .. cp -r webapps.dist/* webapps cd .. cd webapps ls cd .. exit # 退出容器 docker stop tomcat01的id # 停止容器 # 3.将我们操作过的容器通过commit提交为一个镜像!以后要部署tomcat直接使用修改过的镜像就可以。 docker commit -a="sweetcandy" -m="add webapps app" 容器id tomcat01:1.0 # 上传镜像 docker images # 查看镜像是否提交成功



