Como Atualizar o GLPI no Docker Entre Versões

Guia passo a passo para atualizar o GLPI a correr em Docker de uma versão minor ou major para outra, com backup, teste e rollback.

Atualizar o GLPI no Docker é mais seguro e rápido do que em bare metal – basta mudar a tag da imagem e executar a migração. Mas o backup prévio é inegociável.

Pré-requisitos

  • Backup completo da base de dados e dos volumes (ver guia de backup)
  • Verificar compatibilidade dos plugins com a nova versão
  • Testar em ambiente de homologação primeiro

Passo a 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. Parar os containers

docker compose down

3. Atualizar a imagem

No docker-compose.yml, altere a tag:

# De:
image: glpi/glpi:10.0.17
# Para:
image: glpi/glpi:11.0

4. Iniciar com a nova versão

docker compose up -d

5. Executar a migração da base de dados

docker exec -it glpi-app php bin/console db:update --no-interaction

6. Limpar a cache

docker exec -it glpi-app php bin/console cache:clear

7. Verificar

Aceda ao GLPI, verifique a versão em Configuração > Geral e teste as funcionalidades principais.

Rollback

Se algo correr mal:

docker compose down
# Restaurar a base de dados
gunzip < /backup/pre-update.sql.gz | docker exec -i glpi-db mysql -u root -pSENHA glpi
# Reverter para a imagem anterior no docker-compose.yml
docker compose up -d

Perguntas Frequentes

Altere a tag da imagem no docker-compose.yml, faça backup, recrie o container e execute o db:update via consola. A base de dados é migrada automaticamente.

Sim, brevemente. Pare os containers, faça backup, inicie com a nova imagem e execute a migração da base de dados. O downtime típico é de 5-15 minutos.

Restaure o backup da base de dados e volte para a imagem anterior no docker-compose.yml. Por isso o backup pré-atualização é obrigatório.

Precisa de ajuda?