Ի՞նչ է օգտագործվում Docker կոնտեյների ներսում։
sobes.tech AI
Պատասխան AI-ից
Docker կոնտեյները օգտագործում է մի շարք տեխնոլոգիաներ գործընթացների և ռեսուրսների մեկուսացման համար՝
-
Linux միջուկի Namespaces: Ներկայացնում են տարբեր համակարգչային ռեսուրսների մեկուսացում, ինչպիսիք են՝
- PID (Process ID): Մեկուսացնում է գործընթացները:
- Net (Network): Մեկուսացնում է ցանցային շերտը:
- Mount (mnt): Մեկուսացնում է ֆայլային համակարգի մոնտաժման կետերը:
- UTS (Unix Timesharing System): Մեկուսացնում է հոստն ու դոմենային անունը:
- IPC (Interprocess Communication): Մեկուսացնում է միջпроцессային հաղորդակցման մեխանիզմները:
- User (User & Group ID): Մեկուսացնում է օգտվողների և խմբերի նույնականացումները:
-
Control Groups (cgroups): Կառավարում և սահմանափակում է սարքավորումների ռեսուրսների օգտագործումը կոնտեյների ներսում՝ ներառյալ՝
- CPU: Սահմանափակում է պրոցեսորի ժամանակի օգտագործումը:
- Memory: Սահմանափակում է օպերատիվ հիշողության օգտագործումը:
- Block I/O: Սահմանափակում է սկավառակի մուտքագրման արագությունը:
- Net I/O: Սահմանափակում է ցանցային մուտքագրման և ելքի արագությունը:
-
Union File Systems: Ներկայացնում են միացյալ ֆայլային համակարգ, որը բաղկացած է մի քանի շերտերից։ Docker-ը օգտագործում է OverlayFS, AUFS, Btrfs, ZFS նման ֆայլային համակարգեր՝ արդյունավետ կառավարման և շերտեր ստեղծելու համար:
-
Docker Daemon գործընթացը: Կառավարում է կոնտեյների կյանքի ցիկլը՝ ստեղծում, գործարկում, կանգնեցում, հեռացում:
-
Container Runtime: Նվազագույն մակարդակի կոնտեյների կատարման համակարգ։ Docker-ը տարբեր ժամանակներում օգտագործել և աջակցել է տարբեր ռանթայմեր՝ ինչպիսիք են
runc(OCI ստանդարտ) ևcontainerd: -
Կոնտեյներ պատկեր: Ֆայլային համակարգի շերտերի և մետադատված տվյալների հավաքածու, անհրաժեշտ է ծրագրի գործարկման համար:
-
Ծրագիր: Կատարվող կոդը, գրադարանները, կախվածությունները և կոնֆիգուրացիոն ֆայլերը՝ որոնք կազմում են կոնտեյների ներսում աշխատող ծրագրին:
Իրականում, կոնտեյներն այն է՝ մեկուսացված գործընթաց (կամ գործընթացների հավաքածու), որը աշխատում է սահմանափակ միջավայրում, որը տրամադրվում է Linux միջուկով և կառավարվում է Docker-ով։