Atualizar e fazer backups da Evolution API

WhatsApp e APIs··· 270 visualizações· 3 min de leitura

A regra é simples: cópia primeiro, atualização depois, e uma versão de cada vez. A Evolution API depende de uma biblioteca não oficial que acompanha as mudanças do WhatsApp, por isso as versões novas aparecem a um ritmo que não controla. O que controla é o momento em que atualiza e o que tem guardado se dar errado.

O que tem de ser copiado

O quê Por quê
O banco de dados (PostgreSQL ou MySQL) Guarda as instâncias e os dados. É a cópia que mais conta. Veja cópias com mysqldump e pg_dump.
Os volumes das instâncias As sessões que o arquivo compose manda guardar. Sem eles, a cópia do banco de dados pode não chegar para voltar ligado.
O arquivo de configurações Tem a chave da API e as senhas. Sem ele não recria o serviço. Guarde-o num lugar privado, fora do servidor.
O arquivo compose Diz que versão corria e como estava montado.

Uma cópia que está no mesmo servidor serve contra um erro seu, não contra a perda do servidor. Leve-a para fora. Para as opções, veja cópias de um VPS: instantâneos ou arquivos.

Atualizar, passo a passo

1 Faça a cópia do banco de dados, dos volumes e dos arquivos, e confirme que a consegue abrir.
2 Leia as notas da versão no repositório do projeto. Procure mudanças que quebrem a configuração, configurações renomeadas e avisos sobre o banco de dados.
3 Mude a versão da imagem no compose para a que escolheu. Prefira uma versão concreta a seguir a «mais recente».
4 Baixe e recrie: docker compose pull e depois docker compose up -d.
5 Leia os registros com docker compose logs -f. A API tem de iniciar sem erros e as instâncias têm de voltar ligadas.
6 Teste de verdade: envie uma mensagem e receba outra pelo webhook, antes de dar a atualização por boa.
Voltar atrás nem sempre é só trocar a versão. Se a versão nova alterou o banco de dados, a antiga pode já não a perceber. Por isso a cópia é anterior à atualização: restaurar essa cópia e voltar à versão anterior é o recuo seguro. Para o princípio geral, veja atualizar uma aplicação Docker sem perder dados.

Quando atualizar

1 Quando há um problema que a nova versão resolve, como uma instância presa em «connecting». Veja as causas habituais.
2 Quando há uma correção de segurança.
3 Fora do horário de uso. A atualização interrompe o serviço durante algum tempo, e as mensagens que chegam nesse intervalo podem perder-se.
Cada vez que a atualização funcionar, anote a versão e a data. Na próxima vez que algo falhar, saber qual foi a última boa poupa horas. E teste a restauração uma vez, num servidor de ensaio, antes de precisar dela de verdade. A manutenção é sua, como diz a Política de Suporte.

Precisa de espaço para as cópias e para um servidor de ensaio? Veja os VPS.

Ver servidores VPS

VEJA TAMBÉM

Cópias com mysqldump e pg_dump

Atualizar uma aplicação Docker sem perder dados

Cópias de um VPS

PRODUTO RECOMENDADO

Alojamento de sites com cPanel

Domínio e SSL incluídos, cópias diárias e o painel que já conhece. desde R$ 36,30/mês (plano de 3 anos, com cupom)

Ver planos
Esta resposta foi útil? Sua resposta nos ajuda a melhorar este artigo.