GLPI
Herramienta IT para manejar y controlar los cambios en la infraestructura informática de manera sencilla, resolver problemas emergentes de manera eficiente y además hace posible el control fiable sobre el presupuesto y gastos que se realizan en IT.

Enlaces
Home - GLPI Project (glpi-project.org)
Requisitos
- Docker o Podman instalado siguiendo los pasos de instalar
- Portainer configurado siguiendo los pasos de instalar portainer.
- NGINX Proxy manager siguiendo los pasos de instalar NGINX Proxy Manager. (opcional)
- Traefik configurado siguiendo los pasos de instalar Traefik. (opcional)
Imagen
Repositorio de Docker Hub: diouxx/glpi - Docker Image | Docker Hub
Directorio de datos
mkdir -pv $CONTAINERDIR/glpi/{mysql,html}
Portainer- Nuevo «stack»
Add a new stack – Portainer Documentation
Web editor
En Portainer «Stack» agregamos nuevo usando el editor WEB pegando el contenido del fichero «docker-compose.yml» y el contenido del fichero de variables
Fichero de variables «.env»
TZ=$TZ
MARIADB_ROOT_PASSWORD=ps3Jw9renWR!W
MARIADB_DATABASE=glpidb
MARIADB_USER=glpi_user
MARIADB_PASSWORD=cNFq@*rkWN3GU
Fichero docker-compose.yml
services:
mariadb:
image: docker.io/mariadb
container_name: glpidb
restart: unless-stopped
env_file: stack.env
volumes:
- $CONTAINERDIR/glpi/mysql:/var/lib/mysql
glpi:
image: docker.io/diouxx/glpi
container_name : glpi
restart: unless-stopped
env_file: stack.env
depends_on:
- mariadb
volumes:
- $CONTAINERDIR/glpi/html:/var/www/html/glpi
ports:
- 8008:80
En este punto ya puedes ir a http://my.docker.ip.address:8008 para ejecutar el asistente de instalación
Publicando detrás de un proxy
Crear registro DNS
En el proveedor que aloja el servidor DNS público, crear un registro DNS que resuelva la IP pública que llega al Proxy hacia un nombre del estilo "host.domain.com"
NGINX proxy
Para publicar el contenedor detrás de NGINX proxy, el fichero "docker-compose.yml" contendrá lo siguiente:
services:
mariadb:
image: docker.io/mariadb
container_name: glpidb
restart: unless-stopped
env_file: stack.env
volumes:
- $CONTAINERDIR/glpi/mysql:/var/lib/mysql
networks:
- backend
glpi:
image: docker.io/diouxx/glpi
container_name : glpi
restart: unless-stopped
env_file: stack.env
depends_on:
- mariadb
volumes:
- $CONTAINERDIR/glpi/html:/var/www/html/glpi
networks:
- backend
- proxy
networks:
backend:
proxy:
external: true
Crear un nuevo "proxy host"
Añade un nuevo proxy host con el nombre de dominio creado en el paso anterior redirigido hacia el nombre del contenedor y el puerto que use:

Traefik

Para publicar el contenedor detrás del proxy Traefik, deberás añadir al final del fichero "docker-compose.yml" lo siguiente:
networks:
- traefik_public
labels:
- traefik.enable=true
- traefik.http.routers.app.rule=Host(`app.$DOMAIN`)
- traefik.http.routers.app.tls=true
- traefik.http.routers.app.tls.certresolver=letsencrypt
- traefik.http.services.app.loadbalancer.server.port=80
networks:
traefik_public:
external: true
Asistente de instalación
Una vez desplegado el «stack» en docker podemos empezar el proceso de instalación desde la URL: https://{address_glpi}/

Conexión con la base de datos
-
glpi/glpi -> cuenta "admin"
-
tech/tech -> cuenta "tecnico"
-
normal/normal -> cuenta “normal”
-
post-only/postonly -> cuenta "post-only"
Por razones obvias, deberás borrar o editar estas cuentas. Antes de eliminar la cuenta«glpi», asegúrate de haber creado otro usuario con el perfil de «super-admin».
Conector LDAP
Para crear el conector, vamos al menú “Configuración” > “Autenticación”. Seleccionamos “Directorios LDAP”.
Indicamos los datos para el conector de LDAP:
- Nombre: dominio.com
- Servidor predeterminado: Sí
- Activo: Sí
- Servidor: DIRECCION IP o FQDN CONTROLADOR_DOMINIO
- Puerto: 389 (o 636 para LDAPS)
- Filtro de conexión: (&(objectCategory=person)(objectclass=user))
- BaseDN: OU=ou1, dc=dominio, dc=com
- RootDN: usuario_acceso_ldap@dominio.com
- Contraseña: ********
- Campo de usuario: SaMAccountName
- Campo de sincronización: objectguid
Pulsamos en “Añadir”
Ahora, seleccionamos el conector LDAP, y pulsamos en “Probar” para validarlo.
Instalar agentes
Descarga los agentes para PC desde:
Releases · glpi-project/glpi-agent (github.com)
Lanza la instalación:

Remote targets: https://glpi.domain.com/front/inventory.php
http://localhost:62354/
Instalación desde PowerShell
curl https://github.com/glpi-project/glpi-agent/releases/download/1.11/GLPI-Agent-1.11-x64.msi -O GLPI.msi
msiexec /i GLPI.msi /quiet SERVER=https://glpi.domain.com/front/inventory.php
del GLPI.msi



