Docker Linux kernel features ને વાપરે છે — namespaces (અલગતા), cgroups (સંસાધન નિયંત્રણ), અને union filesystems (સ્તરવાળી images) — હલકા વજનના containers બનાવવા માટે. અંતર્ગત પદ્ધતિઓને સમજવાથી સમજાય છે કે containers કેવી રીતે અલગતા અને કાર્યક્ષમતા પ્રાપ્ત કરે છે.
Namespaces — અલગતા
Linux NAMESPACES isolate what a process can SEE — giving each container its own view:
PID namespace → its own process tree (container sees only its processes)
NET namespace → its own network interfaces, IPs, ports
MNT namespace → its own filesystem mounts
UTS namespace → its own hostname
IPC, USER namespaces → isolated IPC, user/group ID mapping
→ Namespaces are WHY a container feels like a separate machine (isolated view),
while actually sharing the host kernel.
