Docker镜像分层初级探究

Docker镜像 -- 联合文件系统

1、Docker镜像是什么?

问:镜像是什么?

答:镜像是一种轻量级的、可执行的独立软件包,包括代码、运行时、库、环境变量和配置文件

所有的应用直接打包docker镜像,直接可以跑起来

得到镜像的几种方式:

  • 远程仓库下载

  • 朋友拷贝

  • 自己只做镜像DockerFile

UnionFS

UnionFS:联合文件系统,我们下载镜像时,看到的一层层的就是这个

如果两个镜像有相同的文件,那么第一个下载了,第二个就不用下载了,直接拿第一个镜像的那个文件来用

Docker镜像加载原理

Docker镜像实际上由一层层的文件系统组成

bootfs:所有容器启动的步骤都相同

rootfs:容器就是一个小的Linux

虚拟机是分钟级别,容器是秒级的

2、镜像分层

镜像分层即不同的层互相堆叠,如下图所示,此时,文件5会替换掉文件4,类似于更新的一个操作。

从远程下载redis镜像时,发现有一层已经下载过了,不需要再次下载了

 一旦使用docker run运行起来,就相当于再加一层

 所有的操作都是基于容器层的,镜像层是不会被改变的,这个时候我们也可以选择将这个容器镜像打包成一个新的镜像

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Docker镜像分层Docker的一个重要特性,它可以帮助我们更高效地管理和共享镜像。下面是关于Docker镜像分层的介绍: 1. Docker镜像分层原理:Docker镜像是由一系列只读层(Layer)组成的,每个层都包含了文件系统的一部分。当我们创建一个新的镜像时,Docker会在已有的镜像层上添加一个新的可写层,这个可写层就是我们所做的修改和添加的内容。这种分层的结构使得镜像可以被共享和复用,同时也减少了存储空间的占用。 2. 镜像分层的优势: - 高效利用存储空间:由于镜像分层结构,相同的层可以被多个镜像共享,减少了存储空间的占用。 - 快速构建和部署:当我们构建一个新的镜像时,只需要在已有的层上添加新的层,而不需要重新构建整个镜像,大大提高了构建和部署的速度。 - 简化更新和回滚:由于每个层都是只读的,当我们需要更新或回滚一个镜像时,只需要修改或切换相应的层即可,而不会影响其他层的内容。 3. 使用镜像分层: - 创建镜像:当我们创建一个新的镜像时,可以使用基础镜像作为起点,在其上添加新的层来构建我们所需的镜像。这样可以避免重复构建相同的基础环境。 - 共享镜像:由于镜像分层的特性,我们可以将自己构建的镜像推送到Docker仓库中,供其他人使用。其他人可以基于我们的镜像再次构建自己的镜像,从而实现镜像的共享和复用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一只嘻嘻嘻

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值