У меня есть несколько контейнеров докера, запускающих веб-приложения. К ним можно получить доступ в моей сети с помощью IP хоста и номера порта, с которым я связал в контейнере.
Я хотел бы смочь получить доступ к приложениям через fqdn, например, app1.home.com (или home.com/app1, если это легче).
Для достижения этого, я предполагаю, что мне были бы нужны dhcp и сервер DNS, работающий на моей сети. Я планирую настроить dnsmasq. Это позволило бы мне разрешать домен home.com локально.
Затем я полагаю, что мне был бы нужен прокси некоторого описания для маршрутизации к определенному порту. Я знаю, что это может быть достигнуто с nginx или апачем, но я не знаю, как и это кажется, уничтожают. Я думаю, что HAProxy мог быть опцией, снова я не знаю как.
TL; DR: Как я могу обратиться к веб-приложениям, работающим в контейнерах докера с помощью fqdn в моей домашней сети?
Просто настройте свой хост докера, чтобы иметь несколько дюйм/с, один для каждого имени хоста, которое требуется настроить. Затем настройте dnsmasq для указания на каждый IP на различное имя хоста, site1.home.com-> X.X.X.X, site2.home.com-> Y.Y.Y.Y. Все они дюйм/с будут принадлежать Вашему хосту докера.
Затем запускают Ваши контейнеры на хосте докера. Я использую рой докера с оверлейной сетью, frontended прокси реверса nginx. Я настроил контейнеры докера для принадлежности этой оверлейной сети, и я указываю - называет для них так, оверлейная сеть докера имеет свой собственный DNS для прокси реверса nginx для использования для указания на другие контейнеры.
Затем я настраиваю nginx для указания на другие контейнеры с помощью основанного на рое DNS в зависимости от IP, используемого для соединения с хостом докера. Таким образом, http://X.X.X.X/ переводится nginx для указания на site1 имени DNS в оверлейной сети. nginx пойдет, получают веб-страницу site1 контейнера и возвращают его пользователю. Это - много излишества, но имеет огромные преимущества, то, что это делает это избыточно с небольшим временем простоя из-за прокрутки обновлений.
, Например: Я перехожу к home1.home.com в своем браузере. Это инициировало поиск DNS, изменяющий home1.home.com на X.X.X.X. Я направлен к прокси реверса nginx хоста докера, который получает веб-страницу site1, которая размещается во внутренней оверлейной сети, на основе IP, который я раньше подключал к хосту докера. Это затем представляет веб-страницу мне.