Docker es la forma más rápida y segura de instalar GLPI 11. En menos de 10 minutos, tendrás un entorno completo funcionando con MariaDB, volúmenes persistentes y listo para producción.
Prerrequisitos
- Servidor Linux (Debian 12, Ubuntu 22.04+ o AlmaLinux 9)
- Docker Engine 24+ y Docker Compose v2
- Mínimo 2 GB de RAM y 20 GB de disco
- Dominio apuntando al servidor (para SSL)
1. Estructura de directorios
Crea la estructura para los volúmenes persistentes:
mkdir -p /opt/glpi/{data,config,plugins,marketplace}
mkdir -p /opt/glpi/db
Esto garantiza que los datos de GLPI y de la base de datos sobrevivan a las recreaciones del contenedor.
2. Docker Compose
Crea el archivo docker-compose.yml:
version: "3.8"
services:
glpi-db:
image: mariadb:10.11
container_name: glpi-db
restart: unless-stopped
environment:
MARIADB_ROOT_PASSWORD: SuaSenhaForte123
MARIADB_DATABASE: glpi
MARIADB_USER: glpi
MARIADB_PASSWORD: SuaSenhaGLPI456
volumes:
- /opt/glpi/db:/var/lib/mysql
command: --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
glpi:
image: glpi/glpi:11.0
container_name: glpi-app
restart: unless-stopped
ports:
- "8080:80"
depends_on:
- glpi-db
volumes:
- /opt/glpi/data:/var/lib/glpi
- /opt/glpi/config:/etc/glpi
- /opt/glpi/plugins:/var/www/glpi/plugins
- /opt/glpi/marketplace:/var/www/glpi/marketplace
environment:
GLPI_DB_HOST: glpi-db
GLPI_DB_NAME: glpi
GLPI_DB_USER: glpi
GLPI_DB_PASSWORD: SuaSenhaGLPI456
3. Iniciar los contenedores
docker compose up -d
Espera 30 segundos para que la base de datos se inicialice. Verifica los logs:
docker compose logs -f glpi
4. Instalación por consola (recomendado)
En lugar de usar el asistente web, instala por CLI para automatización:
docker exec -it glpi-app php bin/console db:install \
--db-host=glpi-db \
--db-name=glpi \
--db-user=glpi \
--db-password=SuaSenhaGLPI456 \
--default-language=pt_BR \
--no-interaction
5. Eliminar archivos de instalación
Por seguridad, elimina el script de instalación al finalizar:
docker exec -it glpi-app rm -f /var/www/glpi/install/install.php
6. Proxy inverso con SSL
En producción, nunca expongas GLPI directamente en el puerto 80. Usa un proxy inverso (Nginx Proxy Manager, Traefik o Nginx manual) con certificado SSL.
Ejemplo con Nginx:
server {
listen 443 ssl http2;
server_name glpi.suaempresa.com;
ssl_certificate /etc/ssl/certs/glpi.crt;
ssl_certificate_key /etc/ssl/private/glpi.key;
location / {
proxy_pass http://127.0.0.1:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
7. Primer acceso
Accede a https://glpi.suaempresa.com e inicia sesión con las credenciales predeterminadas:
- Admin: glpi / glpi
- Técnico: tech / tech
- Normal: normal / normal
Importante: cambia todas las contraseñas predeterminadas inmediatamente después del primer acceso.
8. Buenas prácticas para producción
- Configura copia de seguridad automática del volumen
/opt/glpi/dby/opt/glpi/data - Usa variables de entorno en un archivo
.env(nunca uses contraseñas en el compose) - Habilita el cron de GLPI:
docker exec glpi-app crontab -l - Configura SMTP para notificaciones por email
- Instala plugins vía Marketplace (Configuración > Plugins)
Siguiente paso
Con GLPI funcionando, configura SLA y OLA, crea tu catálogo de servicios y activa los módulos de NexTool para ampliar las funcionalidades.