Docker依賴的Linux內(nèi)核特性
Namespaces命名空間
Control groups (cgroups) 控制組
Namespaces 命名空間
編程語言:封裝=>代碼隔離
操作系統(tǒng):系統(tǒng)資源的隔離(進(jìn)程、網(wǎng)絡(luò)、文件系統(tǒng)......)
docker容器:
PID(Process ID)進(jìn)程隔離
NET(Network)管理網(wǎng)絡(luò)接口
IPC(InterProcess Communication)管理跨進(jìn)程通信的訪問
MNT(Mount)管理掛載點(diǎn)
UTS(Unix Timesharing System)隔離內(nèi)核和版本標(biāo)識
Control groups 控制組
資源限制
優(yōu)先級設(shè)定
資源計量
資源控制
Docker容器的能力
文件系統(tǒng)的隔離:每個容器都有自己的root文件系統(tǒng)
進(jìn)程隔離:每個容器都運(yùn)行在自己的進(jìn)程環(huán)境中
網(wǎng)絡(luò)隔離:容器間的虛擬網(wǎng)絡(luò)接口和IP地址都是分開的
資源隔離和分組:使用cgroups將CPU和內(nèi)存之類的資源獨(dú)立分配給每個Docker容器