acez.nginx

nginx

Rolle zur Einrichtung eines nginx-Containers mit Unterstützung für selbstsignierte SSL-Zertifikate und einem Wildcard-Zertifikat von Let's Encrypt mit DNS-Herausforderung.

Einschränkungen

Die DNS-Herausforderung wird derzeit nur von netcup DNS mit nur einer Domain unterstützt, die mit nginx_config_netcup_domain konfiguriert ist.

Anforderungen

Docker und alle Abhängigkeiten zur Verwaltung von Docker-Containern müssen auf der Zielmaschine installiert sein, damit diese Rolle funktioniert.

Rollen-Variablen

Konfigurationsschlüssel Beschreibung Werte Standard
nginx_container_name Der Containername für den gestarteten nginx-Container. nginx
nginx_container_networks Die Liste der Docker-Netzwerke für den gestarteten Container.
nginx_image_name Überschreibung des nginx-Image-Namens. Verwenden Sie dies, wenn Sie Ihr eigenes Bild bereitstellen möchten. nginx
nginx_image_tag Das Tag für das verwendete nginx-Image. stable
nginx_config_expose_ports Liste der exponierten Ports im Docker-Format. (z.B. - "80:80") - "80:80"
- "443:443"
nginx_filesystem_root Der Pfad auf dem Dateisystem für die nginx-Dateien.
nginx_filesystem_sites Der Pfad auf dem Dateisystem, wo die Konfigurationen der Sites gespeichert sind.
nginx_filesystem_ssl Der Pfad auf dem Dateisystem, wo die SSL-Zertifikate gespeichert sind.
nginx_config_cert_email Die SSL-Zertifikats-E-Mail.
nginx_config_letsencrypt_dns_challenge_provider Der Anbieter für die Let's Encrypt DNS-Herausforderung. Nur netcup wird derzeit unterstützt. netcup
nginx_config_letsencrypt_account_email Die E-Mail-Adresse für das Let's Encrypt-Konto.
nginx_config_letsencrypt_acme_directory Das Let's Encrypt ACME-Verzeichnis. Kann staging oder produktion sein. https://acme-v02.api.letsencrypt.org/directory
nginx_config_sites Liste der nginx-Sites
nginx_config_netcup_api_key Netcup-API-Schlüssel
nginx_config_netcup_api_password Netcup-API-Passwort
nginx_config_netcup_customer_id Netcup-Kunden-ID
nginx_config_netcup_domain Netcup-Domain

Variablen für nginx_config_sites

Variable Beschreibung Werte Standard
hostname Der Hostname für die Site. Wird auch der Dateiname sein.
ssl_provider Geben Sie den SSL-Anbieter an. selbstsigniert, letsencrypt
path_config Liste der Pfadkonfigurationen.

Variablen für path_config

Variable Beschreibung
location Der HTTP-Site-Pfad, der konfiguriert werden soll.
proxy_pass Der Pfad für proxy_pass.
configuration Zusätzliche nginx-Konfiguration für den Pfad. Diese werden 1 zu 1 in die Pfadkonfiguration in nginx eingefügt.

Beispiel für nginx_config_sites

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

Abhängigkeiten

Lizenz

MIT

Über das Projekt

Ansible role to setup a nginx container

Installieren
ansible-galaxy install acez.nginx
GitHub Repository
Lizenz
mit
Downloads
190
Besitzer
Developer based in Ulm, Germany