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来实现具体对容器进行的操作