Що таке host мережа?
host - це тип Docker-мережі, при якому контейнер не отримує власного мережевого простору, а використовує мережевий стек хоста напряму. Тобто контейнер «живе» в мережі хостової машини і працює як звичайний процес на ній.
Як це виглядає
- у контейнера немає окремої IP-адреси;
- він використовує IP хоста;
- порти контейнера і порти хоста - це одне й те саме.
Приклад запуску:
bash
docker run --network host nginxТепер Nginx буде доступний на порту хоста без -p 80:80.
Коли це зручно
- коли потрібна максимальна швидкість мережі (без NAT);
- коли застосунок працює з мережевими інтерфейсами напряму (VPN, моніторинг, мережеві демони);
- коли важливий прямий доступ до localhost хоста.
Мінуси
| Мінус | Суть |
|---|---|
| Немає ізоляції | Контейнер ділить мережу з хостом, вищі ризики |
| Можливі конфлікти портів | Один порт - на весь сервер |
| Менш гнучко | Складніше керувати мережевими правилами |
Підсумок
host-мережа - це режим, у якому Docker вимикає мережеву ізоляцію, і контейнер працює в мережі хоста. Режим швидкий і «прямий», але менш безпечний і менш гнучкий порівняно з bridge.
Коротка відповідь
Для співбесідиPremium
Коротка відповідь допоможе вам впевнено відповідати на цю тему під час співбесіди.