diff --git a/roles/espe_backend-and-nginx/defaults/main.json b/roles/espe_backend-and-nginx/defaults/main.json new file mode 100644 index 0000000..fba6451 --- /dev/null +++ b/roles/espe_backend-and-nginx/defaults/main.json @@ -0,0 +1,4 @@ +{ + "var_espe_backend_and_nginx_domain": "espe.example.org", + "var_espe_backend_and_nginx_port": 4916 +} diff --git a/roles/espe_backend-and-nginx/tasks/main.json b/roles/espe_backend-and-nginx/tasks/main.json new file mode 100644 index 0000000..62eb0ca --- /dev/null +++ b/roles/espe_backend-and-nginx/tasks/main.json @@ -0,0 +1,35 @@ +[ + { + "name": "deactivate default site", + "become": true, + "ansible.builtin.file": { + "state": "absent", + "dest": "/etc/nginx/sites-enabled/default" + } + }, + { + "name": "emplace configuration | data", + "become": true, + "ansible.builtin.template": { + "src": "conf.j2", + "dest": "/etc/nginx/sites-available/{{var_espe_backend_and_nginx_domain}}" + } + }, + { + "name": "emplace configuration | link", + "become": true, + "ansible.builtin.file": { + "state": "link", + "src": "/etc/nginx/sites-available/{{var_espe_backend_and_nginx_domain}}", + "dest": "/etc/nginx/sites-enabled/{{var_espe_backend_and_nginx_domain}}" + } + }, + { + "name": "restart nginx", + "become": true, + "ansible.builtin.systemd_service": { + "state": "restarted", + "name": "nginx" + } + } +] diff --git a/roles/espe_backend-and-nginx/templates/conf.j2 b/roles/espe_backend-and-nginx/templates/conf.j2 index 87ae5dc..454f22e 100644 --- a/roles/espe_backend-and-nginx/templates/conf.j2 +++ b/roles/espe_backend-and-nginx/templates/conf.j2 @@ -4,19 +4,19 @@ map $http_upgrade $connection_upgrade { } server { - server_name {{domain}}; + server_name {{var_espe_backend_and_nginx_domain}}; listen 80; listen [::]:80; listen [::]:443 ssl http2; listen 443 ssl http2; - ssl_certificate /etc/ssl/certs/{{domain}}.pem; - ssl_certificate_key /etc/ssl/private/{{domain}}.pem; + ssl_certificate /etc/ssl/certs/{{var_espe_backend_and_nginx_domain}}.pem; + ssl_certificate_key /etc/ssl/private/{{var_espe_backend_and_nginx_domain}}.pem; include /etc/nginx/ssl-hardening.conf; location / { - proxy_pass http://localhost:{{port}}; + proxy_pass http://localhost:{{var_espe_backend_and_nginx_port | string}}; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;