supertarto.glpi
Ansible GLPI
Un rol de Ansible para instalar y configurar GLPI. Debes tener un servidor web, PHP y MariaDB en tu servidor. Este rol ha sido probado solo con Apache.
Requisitos
Los requisitos recomendados en la documentación oficial de GLPI son:
- Un servidor web (Apache, Nginx, IIS, etc.)
- MariaDB >= 10.0 o MySQL >= 5.6
- PHP 7.2 o superior
- Extensiones de PHP (obligatorias):
- ctype
- curl
- gd (generación de imágenes)
- iconv
- intl
- json
- mbstring
- mysqli
- session
- simplexml
- zlib
- Extensiones de PHP (opcional):
- exif (mejora de seguridad en la validación de imágenes)
- imap (colector de correo y autenticación de usuarios)
- ldap (autenticación de usuarios)
- openssl (comunicación encriptada)
- sodium (mejora del rendimiento en la encriptación/desencriptación de datos sensibles)
- zip y bz2 (instalación de paquetes zip y bz2 del mercado)
Puedes usar supertarto.apache, supertarto.mariadb y supertarto.php para instalar estos requisitos previamente con Ansible.
Plataformas probadas
- Debian 10 (Buster)
- Debian 11 (Bullseye)
- Debian 12 (Bookworm)
Variables del rol
La versión de GLPI y el nombre del paquete.
glpi_version: 10.0.16
glpi_version_package: glpi-10.0.16.tgz
Configura en "true" si deseas realizar la instalación final automáticamente. Esto configura la base de datos por primera vez. De lo contrario, tendrás que terminarlo con tu navegador web. No lo uses cuando actualices y tu base de datos ya esté configurada. La tarea fallará, ya que no está diseñada para actualizaciones.
glpi_auto_install: false
Configura glpi_update en "true" si deseas forzar una reinstalación. La URL usa la versión de glpi y el nombre del paquete.
glpi_update: false
glpi_download_url: "https://github.com/glpi-project/glpi/releases/download/{{ glpi_version }}/{{ glpi_version_package }}"
Propietario web de GLPI, grupo y ruta de instalación.
glpi_web_owner: "www-data"
glpi_web_group: "www-data"
glpi_install_path: /var/www
Información sobre la base de datos de GLPI.
glpi_db_host: "localhost"
glpi_db_port: "3306"
glpi_db_name: "glpi"
glpi_db_user: "glpi"
glpi_db_password: "changeit!"
Ejemplos
- hosts: all
roles:
- role: supertarto.apache
- role: supertarto.mariadb
- role: supertarto.php
- role: supertarto.glpi
vars:
php_packages:
- php8.2
- php8.2-gd
- php8.2-mysql
- php8.2-curl
- php8.2-imap
- php8.2-json
- php8.2-ldap
- php8.2-mbstring
- php8.2-xml
- php8.2-cli
- php8.2-xmlrpc
- php8.2-intl
- php-apcu
- php-cas
- php8.2-zip
- php8.2-bz2
glpi_db_host: "localhost"
glpi_db_port: "3306"
glpi_db_name: "glpi"
glpi_db_user: "glpi"
glpi_db_password: "changeit!"
apache_create_vhosts: true
apache_vhosts_filename: "glpi.conf"
apache_vhost_config:
- listen_ip: "*"
listen_port: 80
server_name: host1
documentroot: "/var/www/glpi"
serveradmin: admin@localhost
custom_param: |
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
LogLevel warn
directory:
- path: "/var/www/glpi"
config: |
AllowOverride All
Order deny,allow
allow from all
mariadb_use_dump_script: false
mariadb_databases:
- name: "{{ glpi_db_name }}"
mariadb_users:
- name: "{{ glpi_db_user }}"
host: "{{ glpi_db_host }}"
password: "{{ glpi_db_password }}"
priv: "{{ glpi_db_name }}.*:SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,ALTER,CREATE TEMPORARY TABLES,LOCK TABLES"
Instalación
ansible-galaxy role install supertarto.glpi
Licencia
GPL V3.0
ansible-galaxy install supertarto.glpi