UnionFS(联合文件系统):Union文件系统(UnionFS)是一种分层、轻量级并且高性能的文件系统,它支持对文件系统的修改作为一次提交来一层层的叠加,同时可以将不同目录挂载到同一个虚拟文件系统下(unite several directories into a single virtual filesystem)。Union 文件系统是 Docker 镜像的基础。镜像可以通过分层来进行继承,基于基础镜像(没有父镜像),可以制作各种具体的应用镜像。 特性 :一次同时加载多个文件系统,但从外面看起来,只能看到一个文件系统,联合加载会把各层文件系统叠加起来,这样最终的文件系统会包含所有底层的文件和目录
$ docker images REPOSITORY TAG IMAGE ID CREATED SIZE tomcat latest 710ec5c56683 7 days ago 668MB redis latest aa4d65e670d6 3 weeks ago 105MB mysql latest c60d96bd2b77 3 weeks ago 514MB centos centos7 8652b9f0cb4c 9 months ago 204MB
将tomcat启动起来
1 2
-- 镜像运行起来,并且将端口进行映射到宿主机端口 docker run -it -p 8080:8080 tomcat
在另外一个创建通过命令查看下当前运行的容器,tomcat正在运行
1 2 3 4
$ docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 8b294cd7074e tomcat "catalina.sh run"29 seconds ago Up28 seconds 0.0.0.0:8080->8080/tcp, :::8080->8080/tcp zealous_cohen f42ae22e4b72 centos:centos7 "/bin/bash"3 weeks ago Up46 hours centos-test
然后我们进入tomcat这个容器看下哈
1
docker exec -it 8b294cd7074e /bin/bash
1 2 3
$ docker exec -it 8b294cd7074e /bin/bash root@8b294cd7074e:/usr/local/tomcat# ls BUILDING.txt CONTRIBUTING.md LICENSE NOTICE README.md RELEASE-NOTES RUNNING.txt bin conf lib logs native-jni-lib temp webapps webapps.dist work
然后再进入webapp(项目文件位置)中看下,如下可以看到webapp中是空的
1 2 3
root@8b294cd7074e:/usr/local/tomcat# cd webapps root@8b294cd7074e:/usr/local/tomcat/webapps# ls root@8b294cd7074e:/usr/local/tomcat/webapps#
root@8b294cd7074e:/usr/local/tomcat# cp -r webapps.dist/* webapps root@8b294cd7074e:/usr/local/tomcat# cd webapps root@8b294cd7074e:/usr/local/tomcat/webapps# ls ROOT docs examples host-manager manager
修改之后发现tomcat可以正常访问了
1 2 3
$ docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 8b294cd7074e tomcat "catalina.sh run" 27 minutes ago Up 27 minutes 0.0.0.0:8080->8080/tcp, :::8080->8080/tcp zealous_cohen
$ docker images REPOSITORY TAG IMAGE ID CREATED SIZE newtomcat 1.0 44cf4d44be66 46 seconds ago 673MB tomcat latest 710ec5c56683 7 days ago 668MB redis latest aa4d65e670d6 3 weeks ago 105MB mysql latest c60d96bd2b77 3 weeks ago 514MB centos centos7 8652b9f0cb4c 9 months ago 204MB