ginsys.nginx

nginx

Este rol es un fork de https://github.com/bennojoy/nginx. Implementa una 'API' diferente sobre cómo definir parámetros.

Este rol instala y configura el servidor web nginx. El usuario puede especificar cualquier parámetro de configuración http que desee aplicar a su sitio. Se pueden agregar cualquier número de sitios con las configuraciones que elija.

Requisitos

Este rol requiere Ansible 1.4 o superior y los requisitos de la plataforma están listados en el archivo de metadata.

Variables del Rol

Las variables que se pueden pasar a este rol y una breve descripción de ellas son las siguientes.

# El número máximo de clientes permitidos
nginx_max_clients: 512

# Un hash de los parámetros http. Tenga en cuenta que
# se pueden agregar aquí cualquier parámetro http válido de nginx.
# (consulte la documentación de nginx para detalles.)
nginx_http_params:
  sendfile: "on"
  tcp_nopush: "on"
  tcp_nodelay: "on"
  keepalive_timeout: "65"
  access_log: "/var/log/nginx/access.log"
  error_log: "/var/log/nginx/error.log"

# Una lista de hashes que definen los servidores para nginx,
# al igual que los parámetros http. Se pueden definir aquí
# cualquier parámetro de servidor válido.
nginx_sites:
 - server:
      file_name: foo
      listen: 8080
      server_name: localhost
      root: "/tmp/site1"
   location:
    - name: /
      try_files: "$uri $uri/ /index.html"
    - name: /images/
      try_files: "$uri $uri/ /index.html"
 - server:
      file_name: bar
      listen: 9090
      server_name: ansible
      root: "/tmp/site2"
   location:
    - name: /
      try_files: "$uri $uri/ /index.html"
    - name: /images/
      try_files: "$uri $uri/ /index.html"

Ejemplos

  1. Instalar nginx con directivas HTTP de elección, pero sin sitios configurados:

    • hosts: all roles:
      • {role: nginx, nginx_http_params: { sendfile: "on", access_log: "/var/log/nginx/access.log"}, nginx_sites: none }
  2. Instalar nginx con diferentes directivas HTTP que el ejemplo anterior, pero sin sitios configurados.

    • hosts: all roles:
      • {role: nginx, nginx_http_params: { tcp_nodelay: "on", error_log: "/var/log/nginx/error.log"}, nginx_sites: none }

Nota: Asegúrese de que las directivas HTTP pasadas sean válidas, ya que este rol no comprobará la validez de las directivas. Consulte la documentación de nginx para más detalles.

  1. Instalar nginx y agregar un sitio a la configuración.

    • hosts: all

      roles:

      • role: nginx, nginx_http_params: sendfile: "on" access_log: "/var/log/nginx/access.log" nginx_sites:
        • server: file_name: bar listen: 8080 location:
          • name: "/" try_files: "$uri $uri/ /index.html"
          • name: /images/ try_files: "$uri $uri/ /index.html"

Nota: Cada sitio agregado se representa por una lista de hashes, y las configuraciones generadas se almacenan en /etc/nginx/sites-available/ y tienen enlaces simbólicos correspondientes desde /etc/nginx/sites-enabled/.

El nombre del archivo para la configuración específica del sitio se especifica en el hash con la clave "file_name"; se pueden agregar cualquier directiva de servidor válida al hash. Para la directiva de ubicación, agregue la clave "location" seguida de un número único; el valor para la ubicación es un hash, asegúrese de que sean directivas de ubicación válidas.

  1. Instalar Nginx y agregar 2 sitios (método diferente)


    • hosts: all roles:
      • role: nginx nginx_http_params: sendfile: "on" access_log: "/var/log/nginx/access.log" nginx_sites:
        • server: file_name: foo listen: 8080 server_name: localhost root: "/tmp/site1" location:
          • name: / try_files: "$uri $uri/ /index.html"
          • name: /images/ try_files: "$uri $uri/ /index.html"
        • server: file_name: bar listen: 9090 server_name: ansible root: "/tmp/site2" location:
          • name: / try_files: "$uri $uri/ /index.html"
          • name: /images/ try_files: "$uri $uri/ /index.html"

Dependencias

Ninguna

Licencia

BSD

Información del Autor

Autor original del rol: Benno Joy
Autor del fork de Ginsys: Serge van Ginderachter serge@vanginderachter.be

Acerca del proyecto

This ansible role manages installation and configuration of nginx. It can both configure general options, as well as virtual hosts. This role is a fork of https://github.com/bennojoy/nginx and implements a different API for configuring locations within a

Instalar
ansible-galaxy install ginsys.nginx
Licencia
Unknown
Descargas
114
Propietario
automate all things!