用了这么多年Docker,殊不知你还有这么多弯弯绕!( 三 )

  • Layer(层):Docker镜像由多个layer层组成,每层都是一个只读的文件系统 。这种分层设计可以实现共享和复用,提高效率 。当镜像中的文件发生变化时 , Docker只会下载发生变化的层,而不是整体镜像,节省了时间和宽带;
  • Image(镜像):镜像是Docker的核心,它是运行容器的基础 。镜像包含了运行应用程序的所有文件和依赖,是一个只读模板,可以通过镜像创建新的容器实例;
  • Registry(注册中心):Registry是存储和管理Docker镜像的服务器 。它是用户上传、下载、管理Docker镜像的地方 。例如Dokcer Hub就是一个公共的Registry;
  • Reference(引用):引用指的是Docker镜像的一种标识 , 通过引用,用户可以指定需要操作的特定镜像;
  • 4、Docker Driver 驱动模块Docker Driver是Docker的驱动模块 , 主要负责驱动Docker容器的运行 。它通过与操作系统的交互,实现对Docker容器的创建、启动、运行和管理等操作 。
    Docker Driver 的主要作用如下:
    • 容器创建与启动:Driver负责根据用户的指令创建新的容器实例,并启动它们 。它会与底层操作系统交互,设置好容器运行所需的各种环境和资源 。
    • 容器运行环境定制:Driver可以根据用户的需求定制容器的运行环境 。这包括网络配置、存储挂载、进程管理等,确保容器在特定的环境中按照预期运行 。
    • 容器状态管理:Driver维护着容器的状态信息,包括容器的运行状态、资源使用情况等 。它可以提供容器状态的查询和监控功能 , 让用户了解容器的实时状态 。
    • 容器资源管理:Driver还负责管理容器的资源,如CPU、内存、磁盘空间等 。它可以对容器使用的资源进行限制和控制,确保容器不会超出预设的资源限制 。
    Docker Driver是Docker中非常重要的组件 , 它通过与操作系统的交互,实现了Docker容器的创建、运行和管理等功能,为Docker平台的正常运行提供了底层支持 。
    5、Docker Graph内部数据库Docker Graph是Docker中的一种数据结构,用于记录和跟踪Docker镜像和容器之间的关系 。
    Docker Graph 的主要作用如下:
    • 关系追踪:Docker Graph能够记录容器和镜像之间的关系,包括哪个镜像被用来创建哪个容器,容器之间是否存在依赖关系等 。这种关系追踪使得用户能够更好地理解和管理容器与镜像之间的关联 。
    • 资源管理:通过Docker Graph , 用户可以更方便地进行资源管理 , 例如查找和删除不再需要的镜像和容器 。它提供了一种全局视图,帮助用户了解整个Docker环境中的资源利用情况 。
    • 性能优化:Docker Graph可以提供一些性能方面的优化 。通过分析和理解Graph中的关系,Docker可以智能地选择最合适的镜像层和缓存策略,从而提高镜像构建和容器启动的速度 。
    Docker Graph在Docker的较新版本中可能已经被替代或集成到其他组件中,因此具体实现和用法可能会因版本而异 。
    6、Docker Libcontainer函数库Docker Libcontainer函数库中包含: