Рейтинг:0

Создайте контейнерный обратный прокси-сервер с несколькими сайтами на отдельном IP-адресе.

флаг cn

Я администрирую небольшой кластер, в котором работает несколько различных служб, включая мониторинг графаны в качестве контейнера, облачное хранилище файлов в качестве контейнера (nextcloud) и сервер FreeIPA на «голом железе». Я хочу разместить службу облачного хранилища за обратным прокси (https://hub.docker.com/r/jwilder/nginx-прокси), чтобы включить https, но я не могу использовать для этого порт 80, потому что он уже используется сервером IPA.

Я знаю, что контейнеру можно назначить общедоступный IP-адрес (я использовал это раньше, чтобы сделать это https://blog.carroarmato0.be/2020/05/08/разоблачение-подман-контейнер-в-сети/), поэтому мне любопытно, могу ли я назначить общедоступный IP-адрес обратному прокси-серверу и сделать так, чтобы прокси-сервер ссылался на контейнер облачного хранилища.Но я не уверен, смогу ли обратный прокси-сервер отправлять трафик в контейнер облачного хранилища, если контейнер облачного хранилища находится за обычной сетью моста. Но я также не думаю, что смогу назначить тот же IP-адрес контейнеру облачного хранилища.

При настройке сервера IPA я в основном сталкивался с людьми, говорящими, что абсурдно пытаться разместить сервер LDAP на машине с другими запущенными службами, но на самом деле у меня нет других вариантов. Если бы это был основной сервер LDAP для нашей организации, это было бы правдой, но это кластер, используемый для исследований, а это означает, что оправдание всего выделенного сервера только для обработки входа в систему для ~ 10 пользователей было бы нелепым.

Возможно, решение состоит в том, чтобы поместить сервер IPA в контейнер с его собственным IP-адресом (что-то, что я пробовал раньше, и у меня так и не получилось), позволяя обратному прокси-серверу использовать порт 80 на обычной машине. Или, может быть, виртуальная машина — лучшее решение.

Но мой главный вопрос заключается в том, могу ли я назначить IP-адрес какой-либо мостовой сети, которая позволила бы мне запускать обратный прокси-сервер и другие контейнеры на общедоступном IP-адресе, отдельном от IP-адресов аппаратных сетевых адаптеров на машине?

Michael Hampton avatar
флаг cz
Вы слышали о виртуальных машинах, да?
Рейтинг:0
флаг cn

Итак, я думаю, что нашел решение.

Оказывается, я могу разместить контейнер обратного прокси-сервера nginx на порту, отличном от порта 80, в моем случае 8894, так что любые запросы к URL-адресу контейнера облачного хранилища на порт 8894 в конечном итоге попадет в контейнер облачного хранилища. Итак, у нас есть следующая установка:

Служба FreeIPA, работающая на порту 80 для URL-адреса foo1.bar.com

Обратный прокси-сервер Nginx работает на порту 8894

Контейнер облачного хранилища, работающий с виртуальным хостом под foo2.bar.com

Итак, теперь запросы на простом foo2.bar.com по-прежнему перенаправляются на foo1.bar.com, но запросы на foo2.bar.com:8894 перенаправляются в контейнер облачного хранилища.

Это было достигнуто только за счет изменения привязки порта с -р 80:80 к -p 8994:80

Ответить или комментировать

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