docker隔离特性依赖的内核特性是Namespaces。
docker依赖于Linux的两个内核特性:
Namespaces:命名空间
Control groups(cgroups):控制组
Namespaces
命名空间提供了一种系统资源的隔离,包括了文件系统、网络、进程等。docker有5种命名空间:
PID:进程隔离
NET:网络管理接口
IPC:管理跨进程通信访问
MNT:管理挂载点
UTS:隔离内核和版本标识
Control groups
这是Linux内核提供的一种可以限制,记录,隔离物理进程组的机制。他提供了以下功能:
资源限制
优先级设定
资源计量
资源控制