Docker的核心组件有哪些?Docker核心组件介绍

博主:xiaoweixiaowei 2022-12-29 条评论

Docker是一个容器化平台,它将应用程序及其依赖项打包在一个容器中,以便应用程序可以在任何环境中无缝工作,无论是开发、试运行还是生产环境。那么Docker的核心组件有哪些?下面一起来了解下。

Docker架构

Docker架构的简单示意图

Docker中的主要组件是Docker引擎(Docker Engine)和Docker客户端(Docker Client)。引擎是执行实际工作的进程或应用程序,而客户端则用于与引擎通信。

Docker Engine

Docker Engine是整个Docker系统的核心部分,它使用的是客户端/服务器体系结构,安装在主机上。Docker Engine有三个组件:

  • Server:它是docker守护进程,称为dockerd文档记录,可以用来创建和管理docker图像、容器、网络等。
  • Rest API:它用于指示docker守护进程做什么。
  • Command Line Interface (CLI):它是一个客户端,用于输入docker命令。

Docker Client

Docker用户可以通过客户端与Docker交互。当任何docker命令运行时,客户端将它们发送到dockerd守护进程,由它执行这些命令。Docker API由Docker命令使用,Docker Client可以与多个守护进程通信。

Docker Registries

这是存储Docker图像的位置,它可以是公共docker注册表或私有docker注册表。Docker Hub是docker images的默认位置,您也可以创建和运行自己的私人登记处。

当您执行docker pull或docker run命令时,所需的docker映像将从已配置的注册表中提取。当您执行docker推送命令时,docker映像存储在已配置的注册表中。

Docker Objects

Docker Objects主要包括image、container、volumes和networks等。其中,docker image的特性如下:

  • docker hub的本地镜像,只读,用于创建docker container。
  • 通常,一个image是基于其他image,再加上一些修改,比如安装软件,修改配置等。
  • 为了创建一个新的image,需要创建dockerfile,包含简单语法用于创建镜像和执行。
  • 当修改dockerfile并重新编译,只有修改部分会重新编译,这也是docker轻量化的原因。

另外,docker container的特性如下:

  • container是image的实例化对象。
  • 你可以创建,启动,关闭,移动或者删除container。
  • 你可以基于container,重新创建一个docker image。
  • 默认,container之间是隔离,docker与主机也是隔离的。

Kubernetes和Docker结合使用。Docker为打包和分发容器化应用程序提供了一个开放标准。使用 Docker,可生成和运行容器,以及存储和共享容器映像。Kubernetes协调和管理Docker创建的分布式容器化应用程序,它还提供了在一组计算机上部署和运行这些应用程序所需的基础结构。

The End

发布于:2022-12-29,除非注明,否则均为 主机评测原创文章,转载请注明出处。