Atualizações
Esta seção apresenta como atualizar o DBizzie para a versão mais recente.
Visão Geral
O processo de atualização do DBizzie é simples e consiste em:
- Baixar a nova imagem Docker
- Atualizar o arquivo
.env
(se necessário) - Reiniciar os serviços
Todo o processo leva apenas alguns minutos para ser concluído.
Processo de Atualização
1. Verificar Versão Atual
Antes de atualizar, verifique qual versão está sendo executada:
# Verificar a imagem atual em uso
docker-compose config | grep "image:"
# Verificar containers em execução
docker-compose ps
2. Fazer Backup (Recomendado)
Sempre faça backup dos seus dados antes de realizar uma atualização.
# Backup do banco de dados
docker-compose exec postgres pg_dump -U dbizzie dbizzie > backup_$(date +%Y%m%d_%H%M%S).sql
# Backup dos arquivos de configuração
cp .env .env.backup.$(date +%Y%m%d_%H%M%S)
cp docker-compose.yml docker-compose.yml.backup.$(date +%Y%m%d_%H%M%S)
3. Baixar a Nova Imagem Docker
Baixe a versão mais recente da imagem Docker:
# Para a versão mais recente (latest)
docker pull dbizzie/dbizzie:latest
Ou para uma versão específica:
# Para uma versão específica (exemplo: 1.2.3)
docker pull dbizzie/dbizzie:1.2.3
4. Atualizar o Arquivo .env (Se Necessário)
Se você não estiver usando a tag latest
, atualize a versão da imagem no arquivo .env
:
Para a versão mais recente:
# .env
APP_IMAGE=dbizzie/dbizzie:latest
Para uma versão específica:
# .env
APP_IMAGE=dbizzie/dbizzie:1.2.3
5. Atualizar os Serviços
Atualize e reinicie os serviços com a nova imagem:
# Atualizar e reiniciar todos os serviços
docker-compose up -d
# Aguardar inicialização completa
docker-compose logs -f web
O comando docker-compose up -d
irá:
- Detectar mudanças na configuração
- Baixar novas imagens (se necessário)
- Recriar containers com a nova versão
- Manter os dados existentes
Verificação da Atualização
Após a atualização, verifique se o processo foi bem-sucedido:
Verificar os Logs
# Logs de todos os serviços
docker-compose logs -f
# Logs específicos do serviço web
docker-compose logs -f web
# Verificar se há erros
docker-compose logs | grep -i error
Verificar a Versão
- Acesse a interface do DBizzie em
http://localhost:4000
- Verifique a versão no rodapé da página ou na seção "Sobre"
- Confirme que todas as funcionalidades estão operando normalmente
Verificar o Status dos Serviços
# Status dos containers
docker-compose ps
# Verificar se todos estão "healthy"
docker-compose ps | grep -v "Up"
Tipos de Atualização
Atualização Menor (Patch)
Para correções de bugs e melhorias menores:
# Exemplo: 1.2.3 → 1.2.4
docker pull dbizzie/dbizzie:1.2.4
# Atualizar .env se necessário
docker-compose up -d
Atualização Maior (Feature)
Para novas funcionalidades:
# Exemplo: 1.2.x → 1.3.0
# 1. Backup obrigatório
# 2. Revisar changelog
# 3. Atualizar configurações se necessário
docker pull dbizzie/dbizzie:1.3.0
# Atualizar .env
docker-compose up -d
Resolução de Problemas
Erro de Migração do Banco de Dados
Se houver erros relacionados a migrações do banco de dados:
# Verificar logs de migração
docker-compose logs web | grep -i migration
# Forçar execução das migrações (se necessário)
docker-compose exec web bin/rails db:migrate
Erro de Porta em Uso
Se a porta estiver ocupada:
# Verificar processos usando a porta
sudo netstat -tulpn | grep :4000
# Parar outros serviços conflitantes
sudo systemctl stop nginx # exemplo
Container não Inicia
# Verificar logs detalhados
docker-compose logs [nome_do_container]
# Verificar recursos do sistema
docker system df
docker system prune # remover dados não utilizados
Rollback para Versão Anterior
Se necessário, você pode reverter para a versão anterior:
# 1. Parar os serviços
docker-compose down
# 2. Editar o .env para a versão anterior
# APP_IMAGE=dbizzie/dbizzie:1.1.0
# 3. Baixar a versão anterior (se necessário)
docker pull dbizzie/dbizzie:1.1.0
# 4. Restaurar backup do banco (se necessário)
# docker-compose up -d postgres
# docker-compose exec postgres psql -U dbizzie -d dbizzie < backup_file.sql
# 5. Reiniciar com a versão anterior
docker-compose up -d
Atualizações Automáticas
Use atualizações automáticas apenas em ambientes de desenvolvimento. Em produção, sempre teste as atualizações manualmente primeiro.
Para ambientes de desenvolvimento, você pode configurar atualizações automáticas usando Watchtower:
# Adicionar ao docker-compose.yml
services:
# ... outros serviços ...
watchtower:
image: containrrr/watchtower
container_name: dbizzie-watchtower
restart: unless-stopped
volumes:
- /var/run/docker.sock:/var/run/docker.sock
environment:
- WATCHTOWER_POLL_INTERVAL=3600 # Verificar a cada hora
- WATCHTOWER_CLEANUP=true # Limpar imagens antigas
- WATCHTOWER_INCLUDE_STOPPED=true
command: dbizzie-web dbizzie-worker dbizzie-manager
networks:
- dbizzie-network
Changelog e Notas de Release
Antes de atualizar, sempre consulte:
- Changelog: Mudanças e melhorias da nova versão
- Breaking Changes: Alterações que podem afetar sua configuração
- Notas de Release: Instruções específicas de atualização
Próximos Passos
Após uma atualização bem-sucedida:
- Testar funcionalidades críticas
- Verificar dashboards e relatórios
- Confirmar conectividade com bancos Oracle
- Documentar a versão atualizada
Mantenha um registro das atualizações realizadas, incluindo versões, datas e observações para facilitar futuras manutenções.