2017-02-03 4 views
0

Предположим, у меня есть две сети докеров на одном компьютере. (Сеть-1 и Сеть-2)Запрос REST по сетям

В каждой сети у меня есть контейнеры. (Контейнер-1-Сеть-1 и Контейнер-1-Сеть-2 и т. Д.)

Мне нужно отправить запрос PUT из контейнера-1 (172.18.0.x) в контейнер-2 (172.19.0. x), но я получаю «отказ от соединения», потому что разные сети не могут общаться друг с другом. Какие у меня варианты? Могу ли я переместить контейнер в другую сеть или объединить сети в один или связать контейнеры каким-то образом (в docker-compose.yml)?

Спасибо.

+1

Это очень похоже на http://serverfault.com/q/830135/351549 – BMitch

ответ

1

В идеале вы должны добавить контейнер в каждую сеть, где ему необходимо связаться с другими контейнерами, и каждая сеть должна быть изолирована друг от друга. Это стандартная конструкция сетей докеров.

Для добавления контейнеров к другой сети, используйте:

docker network connect $network $container 

Простейшее метод, когда у вас есть много контейнеров для управления заключается в использовании Docker Compose определить, какие сети каждый контейнер должен принадлежать. Это автоматизирует команды docker network connect.

+0

Спасибо, любые ссылки о том, как автоматизировать его с помощью докеры, составляют? –

+0

Docker [создание сети с составлением документации] (https://docs.docker.com/compose/networking/) прекрасно описывает этот параметр. – BMitch

Смежные вопросы