Sobes.tech
Junior — Middle

Jakými metodami Docker zajišťuje izolaci mezi běžícími kontejnery?

sobes.tech AI

Odpověď od AI

Docker zajišťuje izolaci mezi kontejnery pomocí několika klíčových mechanismů operačního systému Linux:

  1. Namespaces (prostorové názvy) — izolují procesy, síť, souborový systém a další zdroje. Například:

    • PID namespace — izoluje procesy, takže procesy v jednom kontejneru nevidí procesy jiného.
    • Síťový namespace — samostatné síťové rozhraní a IP adresy pro každý kontejner.
    • Mount namespace — izoluje souborový systém.
  2. Control Groups (cgroups) — omezují a kontrolují využití zdrojů (CPU, paměť, disk, síť) každým kontejnerem, čímž zabraňují vlivu jednoho kontejneru na výkon ostatních.

  3. Union File Systems (OverlayFS, AUFS atd.) — umožňují vytvářet izolované souborové systémy pro každý kontejner na společném základním obraze.

  4. Capabilities a bezpečnostní moduly (například SELinux, AppArmor) — omezují práva procesů uvnitř kontejneru pro zvýšení bezpečnosti.

Tímto způsobem Docker využívá schopnosti jádra OS k vytváření lehkých, izolovaných prostředí, která fungují nezávisle na sobě.