【Docker】从零开始:3.Docker运行原理
- Docker 工作原理
- Docker与系统的关系
- Docker平台架构图解
Docker 工作原理
Docker与系统的关系
- Docker 是一个 Client-Server 结构的系统,Docker 守尹进程运行在王机上, 然后通过 Socket 连接从各尸端坊同,守护进程从各尸端接受命令并管理运行在主机上的容器。
- 容器,是一个运行时环境,就是我们前面说到的集装箱。
Docker平台架构图解
Docker是一个C/S模式的架构,后端是一个松耦合架构,众多模块各司其职。Docker运行的基本流程为:
- 用户是使用Docker Client与Docker Daemon建立通信,并发送请求给后者。
- Docker Daemon作为Docker架构中的主体部分,首先提供Docker Server的功能使其可以接受Docker Client的请求。
- Docker Engine执行Docker内部的一系列工作,每一项工作都是以一个Job的形式的存在。
- Job的运行过程中,当需要容器镜像时,则从Docker Registry中下载镜像,并通过镜像管理驱动Graph driver将下载镜像以Graph的形式存储。
- 当需要为Docker创建网络环境时,通过网络管理驱动Network driver创建并配置Docker容器网络环境。
- 当需要限制Docker容器运行资源或执行用户指令等操作时,则通过Exec driver来完成。
- Libcontainer是一项独立的容器管理包,Network driver以及Exec driver都是通过Libcontainer来实现具体对容器进行的操作。