dockerÔõôʵÏÖ¸ôÀëµÄ
docker¸ôÀë»úÖÆ
DockerÈÝÆ÷ͨ¹ýÒÔÏ»úÖÆʵÏÖ¸ôÀ룺
1. ÃüÃû¿Õ¾àÀëÀë
ÃüÃû¿Õ¼äÊÇÒ»ÖÖLinuxÄں˻úÖÆ£¬ÔÊÐí½¨Éè×ÔÁ¦µÄÐéÄâÇéÐΣ¬ÆäÖÐÀú³Ì¿ÉÒÔÓµÓÐ×Ô¼ºµÄ×ÊÔ´ÊÓͼ¡£DockerÈÝÆ÷ʹÓÃÒÔÏÂÃüÃû¿Õ¼äÀàÐÍ£º
PID ÃüÃû¿Õ¼ä£º¸ôÀëÀú³ÌID£¬Ê¹µÃÈÝÆ÷ÖеÄÀú³ÌÓµÓÐ×Ô¼ºµÄPID¿Õ¼ä¡£
ÍøÂçÃüÃû¿Õ¼ä£º¸ôÀëÍøÂç½Ó¿Ú£¬ÔÊÐíÿ¸öÈÝÆ÷ÓµÓÐ×Ô¼ºµÄIPµØµãºÍ·ÓÉ±í¡£
¹ÒÔØÃüÃû¿Õ¼ä£º¸ôÀëÎļþϵͳ¹ÒÔص㣬±ÜÃâÈÝÆ÷»á¼ûÖ÷»úÎļþϵͳ¡£
2. ¿ØÖÆ×飨cgroups£©
¿ØÖÆ×éÊÇÒ»ÖÖLinuxÄں˻úÖÆ£¬ÓÃÓÚÏÞÖƺ͸ôÀë×ÊԴʹÓá£DockerʹÓÿØÖÆ×éÏÞÖÆÈÝÆ÷¶ÔCPU¡¢ÄÚ´æ¡¢¿é×°±¸ºÍÍøÂçµÈ×ÊÔ´µÄ»á¼û¡£
3. UnionÎļþϵͳ
UnionÎļþϵͳ£¨ÀýÈçAUFS¡¢OverlayFSºÍDevmapper£©ÔÊÐí¶à¸öÎļþϵͳ²ãµþÔÚÒ»Æð¡£DockerʹÓÃUnionÎļþϵͳ½«ÈÝÆ÷¾µÏñºÍÖ÷»úµÄµ×²ãÎļþϵͳÍŽáÆðÀ´£¬Ê¹µÃÈÝÆ÷¿ÉÒÔ»á¼û¾µÏñÖеÄÎļþ£¬Í¬Ê±ÈÔÈ»Äܹ»ÁýÕÖÖ÷»úÎļþϵͳÖеÄijЩÎļþ¡£
4. SELinux
SELinux£¨Çå¾²ÔöÇ¿ÐÍLinux£©ÊÇÒ»ÖÖÇ徲ģ¿é£¬¿ÉÒÔÇ¿ÖÆʵÑé»á¼û¿ØÖÆÕ½ÂÔ¡£DockerʹÓÃSELinuxÀ´½øÒ»²½ÏÞÖÆÈÝÆ÷ÓëÖ÷»ú¼°ÆäËûÈÝÆ÷Ö®¼äµÄ½»»¥¡£
5. AppArmor
AppArmorÊÇÒ»ÖÖ»ùÓÚÕ½ÂԵĻá¼û¿ØÖÆ»úÖÆ¡£DockerʹÓÃAppArmorÀ´ÏÞÖÆÈÝÆ÷ÄÚÀú³Ì¶ÔÎļþµÄ»á¼û¡¢ÍøÂç»á¼ûºÍϵͳŲÓá£
6. Óû§ÃüÃû¿Õ¼ä
Óû§ÃüÃû¿Õ¾àÀëÀëÓû§IDºÍ×éID£¬Ê¹µÃÈÝÆ÷ÖÐÀú³ÌÓµÓÐ×Ô¼ºµÄÓû§ºÍ×éÇéÐΣ¬ÓëÖ÷»ú¸ôÀë¡£
ͨ¹ýÕâЩ¸ôÀë»úÖÆ£¬DockerÈÝÆ÷¿ÉÒÔÏ໥×ÔÁ¦µØÔËÐУ¬²¢ÓëÖ÷»ú¸ôÀ룬´Ó¶øÈ·±£Çå¾²ÐÔ¡¢ÐÔÄܺͿÉÒÆÖ²ÐÔ¡£
ÒÔÉϾÍÊÇdockerÔõôʵÏÖ¸ôÀëµÄµÄÏêϸÄÚÈÝ£¬¸ü¶àÇë¹Ø×¢±¾ÍøÄÚÆäËüÏà¹ØÎÄÕ£¡