负责处理来自客户端的请求(创建,运行,分发容器)。
为用户提供一系列命令,用来和docker服务端交互。
命名空间时linux内核为支持容器虚拟化提供出来的一大特性,它实现了容器之间资源的相互隔离。
隔离资源:内存,cpu,网络,存储,文件系统等等。
同一个进程,在不同的命名空间,进程号不一样。每个命名空间都有一套各自的进程号管理方法。
实现容器之间网络隔离,通过虚拟网络设备,将不同命名空间的网络设备连接到一起。
同一个IPC命名空间的进程可以互相交互,不同的命名空间无法交互。交互方式 还是由linux提供。
提供文件目录的隔离。
允许每个容器都有独自的域名和主机名。
每个容器内都有各自的用户和用户组,而非本机用户。
控制组(CGroups)是lunux提供出来的又一特性,主要是负责共享资源的隔离,控制,审计。
联合文件系统是一种轻量高性能分层文件系统,它是docker镜像技术的基础,支持将文件系统的修改作为一次提交,通过层层打包和继承来扩展镜像功能。
Last updated 2 years ago