Docker镜像
2020-11-18 本文已影响0人
yywfy的昵称
UnionFS联合文件系统:Union文件系统是一种分层,轻量级并且高性能的文件系统,它支持对文件系统的修改作为一次提交来一层层的叠加,同时可以将不同目录挂载到同一个虚拟文件系统。一次同时加载多个文件系统,但从外面看起来,只能看到一个文件系统,联合加载会把各层系统叠加起来,这样最终的文件系统会包含所有底层的文件和目录。
UnionFS系统是Docker镜像的基础,镜像可以通过分层来进行继承,基于基础镜像可以制作出各种具体的应用镜像。Docker的镜像是由一层一层的文件系统组成的,最底层是bootfs,包含加载器和内核,rootfs在bootfs之上,rootfs包含liunx系统的/dev,/proc,/bin,/etc等标准目录和文件。rootfs就是各种不同的操作系统发行版,如ubuntu, centos,版本不同,对应的rootfs就不同。
分层结构的最大好处就——共享资源。如果多个镜像都是从相同的镜像构建而来的,那么主机只需要在磁盘上保存一份base镜像,内存种也只需要加载一份base镜像,就可以为所有的容器服务了。
Docker镜像都是只读的,当容器启动时,一个新的可写的镜像被加载到镜像层的顶部,这一层叫做容器层,容器层之下的都叫镜像层。

当镜像运行之后,可以修改容器里面的内容,再用下面的命令提交成一个新的镜像:
docker commit -a='author' -m='digest' 容器ID 新的镜像名/名称:版本号
