acez.nginx

nginx

Роль для настройки контейнера nginx с поддержкой самоподписанных SSL-сертификатов и wildcard сертификата Let's Encrypt с DNS-вызовом.

Ограничения

В настоящее время DNS-вызов поддерживается только для DNS netcup с одним доменом, который настраивается с помощью nginx_config_netcup_domain.

Требования

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

Переменные роли

Ключ конфигурации Описание Значения Значение по умолчанию
nginx_container_name Имя контейнера для запущенного контейнера nginx. nginx
nginx_container_networks Список сетей Docker для запущенного контейнера.
nginx_image_name Переопределение имени образа nginx. Используйте это, если хотите предоставить свой образ. nginx
nginx_image_tag Тег для используемого образа nginx. stable
nginx_config_expose_ports Список открытых портов в формате Docker. (например, - "80:80") - "80:80"
- "443:443"
nginx_filesystem_root Путь на файловой системе для файлов nginx.
nginx_filesystem_sites Путь на файловой системе, где хранятся настройки сайтов.
nginx_filesystem_ssl Путь на файловой системе, где хранятся SSL-сертификаты.
nginx_config_cert_email Электронная почта для SSL-сертификата.
nginx_config_letsencrypt_dns_challenge_provider Провайдер для DNS-вызова Let's Encrypt. В настоящее время поддерживается только netcup. netcup
nginx_config_letsencrypt_account_email Электронная почта для аккаунта Let's Encrypt.
nginx_config_letsencrypt_acme_directory Каталог ACME Let's Encrypt. Может быть тестовым или производственным. https://acme-v02.api.letsencrypt.org/directory
nginx_config_sites Список сайтов nginx
nginx_config_netcup_api_key API-ключ netcup
nginx_config_netcup_api_password Пароль API netcup
nginx_config_netcup_customer_id Идентификатор клиента netcup
nginx_config_netcup_domain Домен netcup

Переменные для nginx_config_sites

Переменная Описание Значения Значение по умолчанию
hostname Имя хоста для сайта. Это также будет именем файла.
ssl_provider Укажите поставщика SSL. self-signed, letsencrypt
path_config Список конфигураций путей.

Переменные для path_config

Переменная Описание
location Местоположение http сайта, которое нужно настроить.
proxy_pass Путь для proxy_pass.
configuration Дополнительная конфигурация nginx для пути. Она будет помещена 1 к 1 в конфигурацию пути в nginx.

Пример для nginx_config_sites

nginx_config_sites:
  - hostname: my.domain.com
    ssl_provider: letsencrypt
    path_config:
      - location: "/"
        proxy_pass: "http://internal-host:8080"
      - location: "/my-grafana-installation"
        proxy_pass: "http://internal-host-2:3000"
        configuration:
          - "rewrite /grafana/(.*) /$1 break;"

Зависимости

Лицензия

MIT

О проекте

Ansible role to setup a nginx container

Установить
ansible-galaxy install acez.nginx
Лицензия
mit
Загрузки
190
Владелец
Developer based in Ulm, Germany