Docker镜像原理(6)

本文探讨了Docker镜像的本质,解释了为何Docker镜像通常比完整操作系统小的原因,以及Docker镜像的分层结构。Docker通过复用bootfs和创建基于基础镜像的层来实现轻量级的容器化。同时,介绍了Linux文件系统的基本构成,包括bootfs和rootfs,并概述了Docker如何利用Union File System技术构建镜像。
摘要由CSDN通过智能技术生成

1.1 思考

  • Docker镜像的本质是什么?

  • Docker中一个CentOS镜像为什么只有200MB,而一个CentOS操作系统的iso文件要几个G?

  • Docker中的一个Tomcat镜像为什么有500MB,而一个Tomcat安装包只有70多MB。

1.2 Linux文件系统

  • 操作系统组成部分:

    • 进程调度子系统。

    • 进程通信子系统。

    • 内存管理子系统。

    • 设备管理子系统。

    • 文件管理子系统。

    • 网络通信子系统。

    • 作业控制子系统。

  • Linux文件系统由bootfs和rootfs两部分组成。

    • bootfs:包含bootloader(引导加载程序)和kernel(内核)。

    • rootfs:root文件系统,包含的就是典型的Linux系统中的/dev,/proc,/etc等标准目录和文件。

    • 不同的Linux发行版,bootfs基本一样,而rootfs不同,如Ubuntu和CentOS等。

Linux文件系统.png

1.3 Docker镜像原理

  • Docker镜像是由特殊的文件系统叠加而成。

  • 最低端是bootfs,并使用宿主机的bootfs。

  • 第二层是root文件系统的rootfs,称为base image。

  • 然后再往上可以叠加其他的镜像文件。

  • 统一文件系统(Union File System)技术能够将不同的层整合成一个文件系统,为这些层提供一个统一的视角,这样就隐藏了多层的存在,在用户的角度看来,只存在一个文件系统。

  • 一个镜像可以放在另一个镜像的上面。位于下面的镜像称为父镜像,最底部的镜像称为基础镜像。

  • 当从一个镜像启动容器时,Docker会在最顶层加载一个读写文件系统作为容器。

Docker镜像原理.png

1.4 总结

  • 问:Docker镜像的本质是什么?

  • 答:是一个分层文件系统。

  • 问:Docker中一个CentOS镜像为什么只有200MB,而一个CentOS操作系统的iso文件要几个G?

  • 答:CentOS的iso镜像包含bootfs和rootfs,而Docker的centos镜像复用操作系统的bootfs,只有rootfs和其它镜像层。

  • 问:Docker中的一个Tomcat镜像为什么有500MB,而一个Tomcat安装包只有70多MB?

  • 答:Docker中镜像是分层的,Tomcat虽然只有70多MB,但他需要依赖于父镜像和基础镜像,所以整个队外暴露的Tomcat镜像大小约500多MB。

资料领取

扫码下方公众号回复: 1024-22 领取学习资料

相关文章

初识Docker

Docker的安装

Docker进程相关命令

Docker镜像原理

Docker容器的数据卷

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值