В каком сетевом режиме по стандарту работает Docker Compose
Python
Middle
Без компании
В каком сетевом режиме по стандарту работает Docker Compose
Ответы
По умолчанию Docker Compose создает для каждого проекта отдельную bridge-сеть (user-defined bridge network). Все сервисы в файле `docker-compose.yml` подключаются к этой сети и могут взаимодействовать между собой по именам сервисов (без необходимости знать IP-адреса).
Пример сети в `docker-compose.yml`:
```
version: '3'
services:
web:
image: nginx
ports:
- "80:80"
db:
image: postgres
```
В этом случае:
- Создается сеть вида `<project_name>_default`
- `web` и `db` могут обращаться друг к другу по именам `web` и `db` соответственно
- Порт 80 контейнера `web` публикуется на хост-машине
Можно явно указать сеть в конфигурации:
```
networks:
mynet:
driver: bridge
```
Основные преимущества bridge-сети в Compose:
- Изоляция от других проектов
- DNS-резолвинг по именам сервисов
- Автоматическое подключение всех сервисов