2016-10-31 5 views
0

У меня есть докерный рой с 2 ​​узлами, работает 4 службы. Проблема в том, что я хочу разоблачить эти 4 службы через общедоступный IP-адрес через порт 80. Я знаю, что могу использовать субдомен и прокси-сервер для маршрутизации трафика для каждой службы, но есть ли другое решение?Доступ к сервису из докерного роя от общественности

ответ

1

Если вы не вводите прокси-сервер, ваши службы должны будут прослушивать разные порты. Вы не можете заставить их всех слушать 80.

Если ваши службы прослушивают разные порты, они будут доступны через ip-адрес узла1 или node2, независимо от того, на каком узле находятся контейнеры службы. Swarm будет разрешать ваш контейнер на любом узле.

Например, предположим, что у вас есть служение, слушая порт 82, и что он имеет только один контейнер (1 задача) на узле2. Любой запрос к node1: 82 или node2: 82 будет перенаправлен в этот контейнер.