marcusianlevine.nginx-container
nginx-container
Agrega un servicio nginx a tu proyecto de Ansible Container. Ejecuta los siguientes comandos para instalar el servicio:
# Establecer el directorio de trabajo en la raíz de tu proyecto de Ansible Container
$ cd myproject
# Instalar el servicio
$ ansible-container install ansible.nginx-container
Requisitos
- Ansible Container
- Un proyecto existente de Ansible Container. Para crear un proyecto, simplemente ejecuta lo siguiente:
# Crear un directorio de proyecto vacío $ mkdir myproject # Establecer el directorio de trabajo en el nuevo directorio $ cd myproject # Inicializar el proyecto $ ansible-container init
Variables de Rol
STATIC_ROOT: /static
Ruta al contenido estático que será servido por nginx.
STATIC_LOCATION: {{ STATIC_ROOT }}/
Las solicitudes que coincidan con este patrón serán dirigidas al directorio {{ STATIC_ROOT }}. Usualmente "/static/" o "/assets/".
PIDFILE_DIR: /run/nginx
Ruta donde nginx almacenará el valor actual de PID.
ASSET_PATHS: []
Lista de rutas desde las cuales se copiará contenido estático. El contenido se copiará en {{ STATIC_ROOT }}.
NOTA las rutas deben ser válidas dentro del contenedor de construcción de Ansible. Si estás copiando archivos fuente, monta el directorio fuente en el contenedor de construcción usando --with-volumes.
PROXY: no
Cuando uses este rol como parte de la aplicación de demostración, nginx necesita proxear el servicio de django, en cuyo caso establece esto en 'yes'.
PROXY_PASS: ""
La dirección del servidor backend que acepta las solicitudes proxy. Por ejemplo:
http://django:8080
PROXY_LOCATION: ""
Una cadena que contiene un modificador opcional y un patrón que coincide. Las solicitudes que contengan el patrón coincidente se envían a la dirección PROXY_PASS. Por ejemplo,
~* /(api|static)
enviará solicitudes que comiencen con/api
o/static
.
PROXY_CONNECT_TIMEOUT: 60
Establece el
proxy_connect_timeout
con este valor en segundos. Según la documentación de NGINX, no puede superar los 75s.
PROXY_SEND_TIMEOUT: 60
Establece
proxy_send_timeout
con este valor en segundos.
PROXY_READ_TIMEOUT: 60
Establece el
proxy_read_timeout
con este valor en segundos.
Opcional
EXTRA_CONFIG
Lista de rutas absolutas a plantillas de configuración adicionales de NGINX que se colocarán en
/etc/nginx/conf.d
Los nombres de archivo deben terminar en.conf.j2
, ¡pero especifica esta lista solo con.conf
!
Dependencias
Ninguna.
Contribuyendo
Para conveniencia, mientras trabajas en cambios a este rol, puedes probar usando el siguiente flujo de trabajo:
# Confirma tus cambios
$ git commit -m
# Envía tus cambios
$ git push
# Establece el directorio de trabajo en tests
$ cd tests
# Ejecuta una construcción que instala el rol en el último commit
$ ./build.sh
Un par de notas:
- Debes
git push
tus cambios para que la construcción los recoja. - Modifica build.sh para que apunte a tu fork de este rol.
- Si todo va bien y la construcción tiene éxito, el contenedor construido desde tu último commit estará ejecutándose en segundo plano.
- El contenedor que se está ejecutando publicará el puerto 8000:8000, así que si apuntas un navegador a http://localhost:8000, deberías ver la página predeterminada de nginx.
Licencia
Apache v2
Información del Autor
Consulta AUTHORS para ver una lista de contribuyentes. ¡Gracias a todos!
ansible-galaxy install marcusianlevine.nginx-container