Kubernetes——容器基础(完全参考总结于张磊《深入剖析Kubernetes》)

容器镜像——分层结构


下图是容器的rootfs的三个部分,这个三个部分有七层,会被联合挂载到 /var/lib/docker/sufs/mnt目录下面
在这里插入图片描述

只读层

是容器roofs的最下面五层,对应的正式ubuntu:latest镜像的五层。
每一层,都以增量的方式分别包含了Ubuntu操作系统的一部分

Init层

夹在只读层和读写层之间。Init层是Docker项目单独生成的一个内部层,专门用来存放/etc/hosts/etc/resolc.conf等信息。这些文件本来是只读的Ubuntu镜像的一部分,但是用户往往在启动容器的时候会修改一些值,例如hostname等。
但是这些修改,我们又不希望在docker commit的时候连同可读可写层一起提交,因此单独挂载了出来。

可读可写层

可读写层在没有写入文件之前时空的,一旦做出了写的操作,新的修改内容就会以增量的方式出现在这一层。
如果想要删除只读层里面的一个文件,需要做的也是讲只读层里面的文件遮挡起来,而不会真正地去删除这个文件
因此,读写层存放的是我们修改容器之后的增量,在docker commit之后,会保存提交上去,同时只读层里面的内容也不会被修改。

总结

容器的镜像中,只是一个操作系统的所有文件目录,并不包含内核,最多只有几百兆。这个镜像一旦被发布,就可以在世界的另一个地方拉取并且使用镜像,并且可以完整地复制这个镜像的制作者当初完整地环境。这是同期“强一致性”的重要体现。
容器镜像会成为未来软件发布的主流发布方式

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值