Ответ
Кастомные bridge-сети в Docker создаются для изоляции групп контейнеров и организации их взаимодействия в рамках одной виртуальной сети, отделенной от сети по умолчанию (bridge
).
Ключевые преимущества:
- Изоляция: Контейнеры в разных кастомных сетях не могут общаться друг с другом напрямую, что повышает безопасность.
- Встроенный DNS: Docker предоставляет автоматическое разрешение имен контейнеров в IP-адреса в пределах одной кастомной сети. Это позволяет контейнерам обращаться друг к другу по именам, а не по IP.
- Гибкая конфигурация: Можно задавать подсети, шлюзы и другие сетевые параметры.
Пример создания и использования:
# 1. Создание кастомной bridge-сети
docker network create my-app-net
# 2. Запуск контейнера с базой данных в этой сети
docker run -d --name db --network my-app-net postgres
# 3. Запуск контейнера приложения, который сможет обратиться к БД по имени 'db'
docker run -d --name app --network my-app-net -e DATABASE_HOST=db my-app-image
В этом примере контейнер app
сможет подключиться к postgres
по адресу db
, так как они находятся в одной кастомной сети my-app-net
.