--- # nginx is the proxy server # nginx-light contains less modules # but also reduces the surface of attack - name: Install NGINX server apt: update_cache: true name: nginx-light state: present register: apt_result retries: 3 until: apt_result is succeeded # Install proxy snippets - name: Configure NGINX proxy snippets template: src: nginx/snippets/{{ item }}.j2 dest: /etc/nginx/snippets/{{ item }} mode: 0644 loop: - proxy-common.conf - proxy-common-ssl.conf notify: Reload NGINX service # Install sites - name: Configure NGINX sites template: src: nginx/nginx-sites-available.j2 dest: /etc/nginx/sites-available/{{ item.name }} mode: 0644 loop: "{{ reversed_proxy_subdomains }}" notify: Reload NGINX service # Desactive useless nginx sites - name: Deactivate the default NGINX site file: path: /etc/nginx/sites-enabled/default state: absent notify: Reload NGINX service # Activate sites - name: Activate sites file: src: /etc/nginx/sites-available/{{ item.name }} dest: /etc/nginx/sites-enabled/{{ item.name }} state: link loop: "{{ reversed_proxy_subdomains }}" notify: Reload NGINX service # Install main site - name: Configure NGINX main site template: src: nginx/nginx-sites-available-main.j2 dest: /etc/nginx/sites-available/main mode: 0644 notify: Reload NGINX service # Activate main site - name: Activate main site file: src: /etc/nginx/sites-available/main dest: /etc/nginx/sites-enabled/main state: link notify: Reload NGINX service