Docker(3)--Docker镜像的分层结构和两种常见的镜像构建方式(commit、Dockerfile)

1.镜像的基础知识

  • 镜像由多个层组成,每层叠加之后,从外部看来就如一个独立的对象
  • 镜像内部是一个精简的操作系统(OS),同时还包含应用运行所必须的文件和依赖包
  • 因为容器的设计初衷就是快速和小巧,所以镜像通常都比较小
  • 拉取操作会将镜像下载到本地 Docker 主机,可以使用该镜像启动一个或者多个容器
  • 镜像就像停止运行的容器。实际上,可以停止某个容器的运行,并从中创建新的镜像
  • 在该前提下,镜像可以理解为一种构建时(build-time)结构,而容器可以理解为一种运行时(run-time)结构,如下图所示:
    在这里插入图片描述
  • 一旦容器从镜像启动后,二者之间就变成了互相依赖的关系,并且在镜像上启动的容器全部停止之前,镜像是无法被删除的
  • 尝试删除镜像而不停止或销毁使用它的容器,会导致出错
  • 容器目的就是运行应用或者服务,这意味着容器的镜像中必须包含应用/服务运行所必需的操作系统和应用文件
  • 但是,容器又追求快速和小巧,这意味着构建镜像的时候通常需要裁剪掉不必要的部分,保持较小的体积
  • Dockerfile中的每条命令都会在文件系统中创建一个新的层次结构
  • 文件系统在这些层次上构建起来,镜像就构建于这些联合的文件系统之上
  • 当容器启动后,所有镜像都会统一合并到一个进程中
  • 联合文件系统中的文件被
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值