From 147a93b2f08d1bb62ca6946a8ddff2974e418401 Mon Sep 17 00:00:00 2001 From: Aaron LI Date: Wed, 14 Jun 2017 23:24:36 +0800 Subject: Add basic nginx role --- roles/nginx/files/nginx.conf | 33 +++++++++++++++++++++++++++++++++ roles/nginx/handlers/main.yml | 7 +++++++ roles/nginx/tasks/main.yml | 30 ++++++++++++++++++++++++++++++ roles/nginx/vars/main.yml | 13 +++++++++++++ 4 files changed, 83 insertions(+) create mode 100644 roles/nginx/files/nginx.conf create mode 100644 roles/nginx/handlers/main.yml create mode 100644 roles/nginx/tasks/main.yml create mode 100644 roles/nginx/vars/main.yml (limited to 'roles') diff --git a/roles/nginx/files/nginx.conf b/roles/nginx/files/nginx.conf new file mode 100644 index 0000000..1ec0ea6 --- /dev/null +++ b/roles/nginx/files/nginx.conf @@ -0,0 +1,33 @@ +# +# /etc/nginx/nginx.conf +# + +user www-data; +worker_processes auto; + +events { + worker_connections 1024; +} + +http { + include /etc/nginx/mime.types; + default_type application/octet-stream; + + sendfile on; + tcp_nopush on; + tcp_nodelay on; + + server_names_hash_bucket_size 64; + types_hash_max_size 2048; + client_max_body_size 10M; + + keepalive_timeout 65; + + gzip on; + gzip_types text/css text/xml text/plain application/x-javascript application/atom+xml application/rss+xml; + + autoindex on; + index index.html index.htm; + + include /etc/nginx/sites-enabled/*; +} diff --git a/roles/nginx/handlers/main.yml b/roles/nginx/handlers/main.yml new file mode 100644 index 0000000..43d8eb7 --- /dev/null +++ b/roles/nginx/handlers/main.yml @@ -0,0 +1,7 @@ +--- +- name: Restart Nginx + service: + name: nginx + state: restarted + +# vim: set ft=yaml sw=2: diff --git a/roles/nginx/tasks/main.yml b/roles/nginx/tasks/main.yml new file mode 100644 index 0000000..d3a6204 --- /dev/null +++ b/roles/nginx/tasks/main.yml @@ -0,0 +1,30 @@ +--- +- name: Ensure that the Apache web server is not installed + apt: + name: "{{ item }}" + state: absent + with_items: "{{ apache_packages_to_remove }}" + +- name: Install Nginx + apt: + name: nginx + state: present + +- name: Update Nginx configuration + copy: + src: nginx.conf + dest: /etc/nginx/nginx.conf + owner: root + group: root + mode: 0644 + notify: Restart Nginx + +- name: Set up Nginx sites + file: + path: /etc/nginx/{{ item }} + state: directory + with_items: + - sites-available + - sites-enabled + +# vim: set ft=yaml sw=2: diff --git a/roles/nginx/vars/main.yml b/roles/nginx/vars/main.yml new file mode 100644 index 0000000..898d908 --- /dev/null +++ b/roles/nginx/vars/main.yml @@ -0,0 +1,13 @@ +--- + +# Apache web server packages to be removed to avoid conflicts +apache_packages_to_remove: + - apache2 + - apache2.2-bin + - apache2.2-common + - apache2-mpm-event + - apache2-mpm-itk + - apache2-mpm-prefork + - apache2-mpm-worker + +# vim: set ft=yaml sw=2: -- cgit v1.2.2