## Playbook Nginx

Hieronder de `playbook.yml` voor de nginx-server.

    ---
    - hosts: ubuntu-server
      tasks:
        - name: ensure nginx is at the latest version
          apt: name=nginx state=latest
          become: yes

        - name: start nginx
          service:
              name: nginx
              state: started
          become: yes

        - name: copy the nginx config file and restart nginx
          copy:
            src: static-site.cfg
            dest: /etc/nginx/sites-available/static_site.cfg
          become: yes

        - name: create symlink
          file:
            src: /etc/nginx/sites-available/static_site.cfg
            dest: /etc/nginx/sites-enabled/default
            state: link
          become: yes

        - name: copy the content of the web site
          copy:
            src: "static-site/"
            dest: "/home/student/static-site"

        - name: restart nginx
          service:
            name: nginx
            state: restarted
          become: yes

        - name: "UFW - Allow HTTP on port 80"
          ufw:
            rule: allow
            port: "80"
            proto: tcp
          become: yes

Zorg dat dit configuratie bestand in dezelfde directory zit met de naam `static-site.cfg`

    server {
            listen 80 default_server;
            listen [::]:80 default_server;
            root /home/student/static-site;
            index index.html index.htm;
            server_name noorderpoort;
            location / {
                    try_files $uri $uri/ =404;
            }
    }

In de directory van de playbook maar je een directory met de naam `static-site`, hierin plaats je de index.html en eventueel een afbeelding. Zorg dat de verwijzingen in je playbook overeenkomen met wat in jouw directory staat. Naamgevingen zijn hier een voorbeeld, maar kijk goed dat dit overeenkomt.

Na het deployen van je playbook zou je nginx-website beschikbaar moeten zijn op het IP-adres.