Указание нескольких доменов на один виртуальный хост с помощью nginx и jwilder / docker-gen

Я новичок в использовании nginx и не уверен, какое решение мне следует использовать для решения этой проблемы.

Я хотел бы иметь несколько доменов, указывающих на один виртуальный хост в nginx. Так, например: домены example.one.com а также example.two.com укажет на виртуальный хост.

Я запускаю nginx и nginx-gen (jwilder / docker-gen) в качестве контейнеров Docker. Поэтому параметры конфигурации для nginx определяются на основе аргументов, указанных в команде запуска других контейнеров Docker. Например:

      docker run -d \
  --restart=unless-stopped \
  --name hub \
  --network local \
  -e VIRTUAL_HOST=hub.site.com \
  -e VIRTUAL_PORT=3000 \
  -e LETSENCRYPT_HOST=hub.site.com \
  -e LETSENCRYPT_EMAIL=info@site.com \
  -e FRONTEND='https://hub.site.com/' \
  site/hub

Здесь все с -e flag распознается и внедряется в конфигурацию nginx.

Если есть способ указать несколько доменов, чтобы они указывали на hub.site.com из этой команды запуска, это решит мою проблему, пока все еще используется текущий поток для определения настроек для конфигурации nginx.

Единственное известное мне решение - это прямое редактирование конфигурации nginx и использование метода из этого потока . Хотя это противоречило бы моему текущему порядку определения настроек конфигурации nginx.

1 ответ

jwilder/docker-gen генерирует docker-compose.yml для jwilder/nginx-proxy . В документе говорится:

Несколько хостов Если вам нужно поддерживать несколько виртуальных хостов для контейнера, вы можете разделить каждую запись запятыми. Например, foo.bar.com,baz.bar.com,bar.com и все хосты будут настроены одинаково.

Таким образом, вы можете добавить несколько доменов на один хост, разделив их запятыми:

      ...
-e VIRTUAL_HOST=example.one.com,example.two.com
...
Другие вопросы по тегам