1.6 KiB
1.6 KiB
Docker — Networking (one-screen)
1) Зачем network drivers
Docker должен обеспечивать контейнерам сетевую связность и изоляцию:
- маршрутизация/правила (iptables),
- формирование/инкапсуляция пакетов,
- иногда шифрование.
2) Основные драйверы
- bridge (по умолчанию): контейнеры в одной bridge-сети видят друг друга; между разными bridge сетями связи нет.
- host: контейнер использует сеть хоста (меньше изоляции; возможны конфликты портов; только Linux).
- overlay: сеть поверх сети для контейнеров на разных хостах.
- macvlan: контейнер как “физическое устройство” в сети (с отдельным MAC); Linux.
- none: полностью без сети.
- plugins: сторонние драйверы/CNI.
3) Практические заметки
- Bridge — безопасный дефолт, хорош для изоляции.
- Если нужно менять сетевую конфигурацию внутри контейнера, могут понадобиться дополнительные capabilities (например
CAP_NET_ADMIN). - Для более продвинутых сценариев — смотреть в сторону CNI-плагинов.
Source: Network Drivers - Docker