sweet-tooth-clojure.clojure-uberjar-webapp-nginx
Rollenname
Diese Rolle konfiguriert einen Nginx-Server, um als Reverse-Proxy für einen Anwendungsserver zu fungieren. Es gibt Nginx-Konfigurationen für SSL und ohne SSL.
Siehe https://github.com/sweet-tooth-clojure/ansible-roles für einen schnellen Überblick und Anweisungen. Siehe Veröffentlichen Ihrer ersten Clojure-App ... Aus den Schatten für einen einführenden Leitfaden zu Ansible und eine detaillierte Erklärung dieser Rolle.
Anforderungen
Keine
Rollenvariablen
Ich habe versucht, so viel wie möglich zu parametrisieren, um Standardwerte festzulegen, sodass Sie nur einige Variablen definieren müssen, damit alles funktioniert. Wenn Sie clojure_uberjar_webapp_app_name
definieren, wird flyingmachine.clojure-uberjar-webapp-common
clojure_uberjar_webapp_app_name
definieren, das von den meisten der folgenden Variablen verwendet wird.
Zum Beispiel, wenn Ihre Domain foo.bar.com
ist, wird der Anwendungsname foo-bar-com
sein. Die Konfiguration der Website Ihrer App wird in /etc/nginx/sites_available/foo-bar-com.conf hochgeladen, und Sie finden die Protokolle unter /var/log/nginx/foo-bar-com.access.log
. Ich finde, dass diese Konsistenz die Navigation im Dateisystem erleichtert.
Es gibt einige Verweise auf Datomic-Variablen, aber diese sind optional. Ich hoffe, die Rollen so zu verbessern, dass diese Rolle keine Verweise auf Datomic enthält.
Variable | Beschreibung |
---|---|
clojure_uberjar_webapp_nginx_dir |
Verzeichnis, das die Nginx-Konfigurationen enthält |
clojure_uberjar_webapp_nginx_server_name |
Wird verwendet, um server_name in der Nginx-Site-Konfiguration festzulegen; standardmäßig clojure_uberjar_webapp_domain |
clojure_uberjar_webapp_nginx_upstream_name |
Name innerhalb der Konfiguration, um auf die Java-App im Upstream zu verweisen |
clojure_uberjar_webapp_nginx_sites_available |
Pfad zum sites_available-Verzeichnis von Nginx; hauptsächlich für DRY-Gründe |
clojure_uberjar_webapp_nginx_sites_enabled |
Pfad zum sites_enabled-Verzeichnis von Nginx; hauptsächlich für DRY-Gründe |
clojure_uberjar_webapp_nginx_static_location |
Basis-URL zum Bereitstellen von statischen Dateien. z.B. http://foo.com/static/logo.png sollte eine statische Datei bereitstellen |
clojure_uberjar_webapp_nginx_static_alias |
Wo auf dem Server-Dateisystem nach statischen Dateien gesucht wird |
clojure_uberjar_webapp_nginx_use_ssl |
Auf Wahr setzen, um SSL zu verwenden |
clojure_uberjar_webapp_nginx_letsencrypt_dir |
Wo die Letsencrypt-Dateien gespeichert werden |
clojure_uberjar_webapp_nginx_additional_config |
Wird am Ende der Nginx- Konfigurationsdatei der Site angehängt |
Abhängigkeiten
Beispiel-Playbook
---
- hosts: webservers
become: true
become_method: sudo
roles:
- "sweet-tooth-clojure.clojure-uberjar-webapp-common"
- "sweet-tooth-clojure.clojure-uberjar-webapp-nginx"
- "sweet-tooth-clojure.clojure-uberjar-webapp-datomic-free"
- "sweet-tooth-clojure.clojure-uberjar-webapp-app"
Lizenz
MIT
Autoreninformation
Daniel Higginbotham
ansible-galaxy install sweet-tooth-clojure.clojure-uberjar-webapp-nginx