Я пытаюсь запустить контейнер Docker в качестве маршрутизатора между частной ( --internal
) сетью Docker и предопределенной host
сетью. Это означает, что контейнер должен иметь два сетевых интерфейса: один «внешний» интерфейс, который может получить доступ ко всем IP-адресам хоста, и один «внутренний» интерфейс, который действует как шлюз для контейнеров во внутренней сети Docker.
Контейнер маршрутизатора сам затем будет передавать сетевой трафик NAT из / в контейнеры.
Я не нашел способ настроить Docker для запуска контейнера с этими двумя интерфейсами. Самое близкое, что я мог получить, - это назначить два bridge
интерфейса, что не совсем то, что мне нужно.
Попытка подключения вручную приводит к ошибке:
# docker network connect host root_router_1
Error response from daemon: Container cannot be disconnected from host network or connected to host network
Кто-нибудь может показать мне, как этого добиться, желательно даже с помощью Docker Compose?