Aggiornare GLPI in Docker è più sicuro e veloce che su bare metal – basta cambiare il tag dell'immagine ed eseguire la migrazione. Ma il backup preventivo è non negoziabile.
Prerequisiti
- Backup completo del database e dei volumi (vedere la guida al backup)
- Verificare la compatibilità dei plugin con la nuova versione
- Testare prima in un ambiente di staging
Passo dopo passo
1. Backup
docker exec glpi-db mysqldump -u glpi -pSENHA glpi | gzip > /backup/pre-update.sql.gz
tar -czf /backup/pre-update-volumes.tar.gz /opt/glpi/2. Fermare i container
docker compose down3. Aggiornare l'immagine
In docker-compose.yml, modificate il tag:
# Da:
image: glpi/glpi:10.0.17
# A:
image: glpi/glpi:11.04. Avviare con la nuova versione
docker compose up -d5. Eseguire la migrazione del database
docker exec -it glpi-app php bin/console db:update --no-interaction6. Svuotare la cache
docker exec -it glpi-app php bin/console cache:clear7. Verificare
Accedete a GLPI, verificate la versione in Configurazione > Generale e testate le funzionalità principali.
Rollback
Se qualcosa va storto:
docker compose down
# Ripristinare il database
gunzip < /backup/pre-update.sql.gz | docker exec -i glpi-db mysql -u root -pSENHA glpi
# Tornare all'immagine precedente in docker-compose.yml
docker compose up -d