Запропонувати правкуПокращити цю статтюДопрацюйте відповідь до «Як Docker забезпечує ізоляцію процесів?». Ваші зміни проходять модерацію перед публікацією.Потрібне підтвердженняКонтентЩо ви змінюєте🇺🇸EN🇺🇦UAПереглядЗаголовок (UA)Коротка відповідь (UA)**Docker** забезпечує ізоляцію на рівні ядра Linux за допомогою двох ключових механізмів: **namespaces** і **cgroups**. **Ключове:** Docker забезпечує ізоляцію процесів, мережі, користувачів і файлової системи через namespaces, обмеження ресурсів через cgroups, а безпеку - через seccomp, AppArmor/SELinux.Показується над повною відповіддю для швидкого нагадування.Відповідь (UA)ЗображенняDocker забезпечує ізоляцію на рівні ядра Linux за допомогою двох ключових механізмів: **namespaces** і **cgroups**. ### **1. Namespaces - ізолюють "видимість" світу для процесу** Namespaces дають кожному контейнеру власний простір імен. Тобто процес всередині контейнера **не бачить** ресурси інших процесів чи системи загалом. Використовуються такі типи namespaces: | Namespace | Що ізолює | |---|---| | **PID** | Таблицю процесів - контейнер бачить тільки свої процеси | | **NET** | Мережеві інтерфейси, маршрути, iptables | | **IPC** | Черги повідомлень, shared memory | | **UTS** | Hostname, domain name | | **MNT** | Точки монтування і файлову систему | | **USER** | Користувачів і UID'и | **Ефект:** у кожного контейнера - свій міні-світ. ### **2. Cgroups - обмежують ресурси** Control Groups керують тим, **скільки ресурсів може споживати контейнер**, щоб він не "з'їв" усе. Cgroups дозволяють задавати ліміти на: - CPU - RAM - I/O - Network (опосередковано, через tc) - кількість процесів тощо **Ефект:** навіть якщо застосунок у контейнері впав у нескінченний цикл, він не завалить увесь сервер. ### **3. Rootfs + OverlayFS - файлова ізоляція** Docker використовує **копіювання при записі (CoW)** і шари overlay FS, щоб кожен контейнер мав *логічно окрему* кореневу файлову систему, навіть якщо фізично шари спільні. ### **4. Seccomp, AppArmor, SELinux - безпека** Додатково Docker може обмежувати системні виклики і права: - **Seccomp** - забороняє небезпечні syscalls - **AppArmor/SELinux** - обмеження доступу до системних ресурсів ### **Підсумок для middle-рівня:** Docker забезпечує ізоляцію **процесів, мережі, користувачів і файлової системи через namespaces**, **обмеження ресурсів через cgroups**, а **безпеку - через seccomp, AppArmor/SELinux**. Завдяки цьому контейнер працює *як окреме середовище*, залишаючись при цьому легким, тому що ядро ОС спільне. Якщо хочеш, можу так само коротко розібрати **"чим відрізняється pid namespace від chroot"** або **"чому контейнер не дорівнює безпеці як VM"**.Для рев’юераПримітка для модератора (необов’язково)Бачить лише модератор. Прискорює рев’ю.