В качестве примера возьмем контейнер 1 (c1
) и контейнер 2 (c2
) в сетях наложения 172.0.0.0/24
и 192.0.0.0/24
соответственно.
Есть ли способ настроить два наложения сети - возможно, при создании с некоторыми пользовательскими настройками - чтобы разрешить связь от c1
до c2
и наоборот?
До сих пор я пробовал иметь контейнер маршрутизатора vyos (2stacks/vyos
изображение) с правилами маршрутизации, настроенными в нем. В этом случае мне нужно будет также установить правила маршрутизации в c1
и / или c2
, чтобы разрешить следующий путь:
c1
>>> vyos-container
>> c2
.
Однако это не масштабируется, поскольку сильно зависит от заданных c ограничений Docker изображений, используемых для c1
и c2
, и включает в себя ввод контейнера для внесения изменений.
Я также пытался установить --gateway
IP при запуске docker network create
, чтобы он указывал на IP, который я в конечном итоге назначу маршрутизатору vyos для достижения пути, упомянутого выше. Однако Docker выдает ошибки при попытке назначить IP-адрес --gateway
для любых последующих контейнеров.
Существует ли менее ручной и более общий / многократно используемый способ достижения этого с помощью команд Docker по умолчанию?
Я пришел из области программного обеспечения с более ограниченными знаниями в области сетей, поэтому я могу упустить что-то простое.