nginx_docker

Помощник обратного прокси Nginx

Сервер обратного прокси NGINX

статус тестирования
Роль протестирована на Ubuntu с установленным Docker через мою роль bsmeding.docker на дистрибутивах Linux.

Ранее использовался в качестве фронтенда при развертывании контейнеров Docker на платформах.
Стандартный образ берется с Linuxserver: https://docs.linuxserver.io/images/docker-nginx

На данный момент доступен ограниченный набор параметров конфигурации. Они будут добавлены позже.

Конфигурация обратного прокси

Для каждого контейнера (или другого сервиса/сервера) вы можете добавить конфигурацию прокси с переменной nginx__proxy_confs_subdomain. Если вы пересылаете запросы к контейнерам, подключите их к одной и той же сети Docker для удобства разрешения имен и безопасности.

Этот пример будет перенаправлять входящие запросы на dash.example.com на порт 80 к контейнеру с именем dashboard на порт 9090, порт 80 (http):

nginx__proxy_confs_subdomain:
 - server_name: dash.example.com
   listen: 80
   enable_ldap: false
   enable_authelia: false
   default_upstream_proto: http
   default_upstream_url: dashboard
   default_upstream_port: 9090

Файлы сайта

Если вы хотите скопировать директорию сайта, поместите ее в /files/nginx/sites/<site_directory>
или /files/nginx/<inventory_hostname>/sites/<site_directory>, если вы развертываете несколько серверов с разными сайтами.

Файлы конфигурации сайта

Если вы хотите, чтобы конкретные файлы конфигурации сайта были скопированы, поместите их в директорию вашего плейбука /files/nginx/site-confs/. Они должны иметь формат файла конфигурации сайта Nginx <site.conf>.
Или в /files/nginx/<inventory_hostname>/site-confs/ для отдельных конфигураций хостов.

https / ssl / Сертификат

Если вам нужны сертификаты, поместите их в директорию вашего плейбука под files/nginx/certs/, назвав их как website_url.crt и website_url.key.
Если файл ключа защищен паролем, добавьте это в переменную поддомена, чтобы она могла быть защищена ansible-vault.

nginx__proxy_confs_subdomain:
 - server_name: dash.example.com
   listen: 80
   listen_https: 443 # необходимо включить https
   cert_key_passphrase: 'sbsta261da' # пример пароля для файла cert.key, если установлен. В противном случае не устанавливайте эту переменную
   enable_ldap: false
   enable_authelia: false
   default_upstream_proto: http
   default_upstream_url: dashboard
   default_upstream_port: 9090
О проекте

Manage and run the Nginx container from Linuxserver(default).

Установить
ansible-galaxy install bsmeding/ansible_role_nginx_docker
Лицензия
Unknown
Загрузки
617
Владелец
Freelance Network Automation Consultant | DevNetOps | Home Automation