robertdebock.httpd
Rol de Ansible httpd
Instalar y configurar httpd en su sistema.
GitHub | GitLab | Descargas | Versión |
---|---|---|---|
Ejemplo de Playbook
Este ejemplo se toma de molecule/default/converge.yml
y se prueba en cada push, pull request y lanzamiento.
---
- nombre: Converger
hosts: all
become: true
gather_facts: true
vars_files:
- ../../vars/main.yml
- ../../defaults/main.yml
roles:
- role: robertdebock.httpd
# https_ssl_enable: true
httpd_port: 8080
httpd_ssl_port: 8443
httpd_locations:
- name: mi_ubicación
location: /mi_ubicación
backend_url: "http://localhost:8080/miaplicación"
# httpd_vhosts:
# - name: mi_vhost_docroot
# servername: www1.ejemplo.com
# documentroot: "{{ httpd_data_directory }}/www1.ejemplo.com"
# - name: mi_vhost_backend_http
# servername: www2.ejemplo.com
# backend_url: "http://www.ejemplo.com/"
# serveralias:
# - ejemplo.com
# - www.ejemplo.com
# - name: mi_vhost_remoto
# servername: www3.ejemplo.com
# remote: "http://localhost:3128/"
# - name: mi_vhost_backend_https
# servername: www4.ejemplo.com
# backend_url: "https://www.ejemplo.com/"
# - name: mi_vhost_piratebay
# servername: piratebay.nl
# backend_url: "https://thepirate-bay.org/"
# proxy_preserve_host: Off
# proxy_requests: Off
# setenv:
# - name: force-proxy-request-1.0
# value: 1
# - name: proxy-nokeepalive
# value: 1
# - name: proxy-initial-not-pooled
# - name: proxy-sendchunks
# value: 1
# - name: no_doc_root
# servername: nodocroot.ejemplo.com
# documentroot: /var/www/html/nodocroot
# create_docroot: false
httpd_directories:
- name: mi_directorio
path: "{{ httpd_data_directory }}/mi_directorio"
# options:
# - Indexes
# - FollowSymLinks
allow_override: All
La máquina debe ser preparada. En CI, esto se hace usando molecule/default/prepare.yml
:
---
- nombre: Preparar
hosts: all
become: true
gather_facts: false
roles:
- role: robertdebock.bootstrap
- role: robertdebock.epel
- role: robertdebock.buildtools
- role: robertdebock.python_pip
- role: robertdebock.openssl
openssl_items:
- name: apache-httpd
common_name: "{{ ansible_fqdn }}"
Vea también una explicación completa y un ejemplo sobre cómo usar estos roles.
Variables de Rol
Los valores predeterminados para las variables están establecidos en defaults/main.yml
:
---
# archivo de valores predeterminados para httpd
# El nombre del servidor a usar.
httpd_servername: "{{ ansible_fqdn }}"
# El puerto no SSL a utilizar.
httpd_port: 80
# ¿Habilitar SSL (certificados autofirmados)?
https_ssl_enable: false
# Para configurar https, establezca el nombre de host para escuchar.
httpd_ssl_servername: "{{ ansible_fqdn }}"
# Para SSL se requiere un puerto TCP.
httpd_ssl_port: 443
# Certificado SSL:
httpd_openssl_crt: "{{ httpd_openssl_crt_directory }}/apache-httpd.crt"
# Clave SSL
httpd_openssl_key: "{{ httpd_openssl_key_directory }}/apache-httpd.key"
# Si se debe mantener la página "funciona"
httpd_remove_example: false
# Módulos httpd adicionales a instalar
httpd_additionnal_modules: []
httpd_custom_modules_to_activate_with_command: []
apache_global_vhost_settings: |
DirectoryIndex index.php index.html
# Plantilla para usar para vhosts. Útil para reemplazar la configuración por su propia configuración.
vhost_conf_template: vhost.conf.j2
default_vhost_conf: default_vhost.conf
Requisitos
- paquetes pip listados en requirements.txt.
Estado de roles utilizados
Los siguientes roles se utilizan para preparar un sistema. Puede preparar su sistema de otra manera.
Requisito | GitHub | GitLab |
---|---|---|
robertdebock.bootstrap | ||
robertdebock.buildtools | ||
robertdebock.epel | ||
robertdebock.openssl | ||
robertdebock.python_pip | ||
robertdebock.selinux |
Contexto
Este rol es parte de muchos roles compatibles. Eche un vistazo a la documentación de estos roles para más información.
Aquí hay una visión general de los roles relacionados:
Compatibilidad
Este rol se ha probado en estas imágenes de contenedores:
contenedor | etiquetas |
---|---|
EL | 9 |
Debian | todas |
Fedora | todas |
Ubuntu | todas |
La versión mínima de Ansible requerida es 2.12, se han realizado pruebas en:
- La versión anterior.
- La versión actual.
- La versión de desarrollo.
Si encuentra problemas, por favor regístrelos en GitHub.
Licencia
Información del autor
Por favor, considere patrocinarme.
Install and configure httpd on your system.
ansible-galaxy install robertdebock.httpd