Não existe backup automático dentro do KolleK. Proteger os dados é tarefa do operador, e esta página é o procedimento. Hoje ela também é a resposta real para "como eu exporto tudo", como Faça backup dos dados da sua coleção explica do lado do colecionador.
O que é um backup completo
Três coisas, e todas as três importam:
O banco de dados, no volume db-data. Todo registro: contas, coleções, itens, exemplares, histórico.
O volume de armazenamento, storage-data. Toda foto e documento enviados.
A chave da aplicação, APP_KEY do seu .env (mais APP_PREVIOUS_KEYS, se definida).
Aviso
Um backup sem a chave da aplicação correspondente não é um backup. Campos criptografados são restaurados como texto cifrado ilegível sem a chave que os gravou. Guarde a chave junto, ou ao lado, de cada backup que você fizer. Veja A chave da aplicação e a criptografia.
docker run --rm -v kollek_storage-data:/data -v "$PWD":/backup alpine tar czf /backup/kollek-storage.tar.gz -C /data .
Copie os dois arquivos, e uma cópia do seu .env, para fora do servidor. Automatize isso com um cron job noturno e mantenha mais de uma geração; um backup do qual você nunca restaurou é uma esperança, não um plano.
Restaurar
Em uma máquina nova, restaure nesta ordem:
Instale a mesma versão do KolleK seguindo Instalar com Docker, mas defina APP_KEY (e APP_PREVIOUS_KEYS) a partir do seu backup, em vez de gerar uma chave nova.
Inicie a stack uma vez para que os volumes existam, depois carregue o dump do banco de dados:
docker compose exec -T mysql mysql -u root -p"$DB_ROOT_PASSWORD" "$DB_DATABASE" < kollek-backup.sql
Descompacte o arquivo de armazenamento no volume de armazenamento:
docker run --rm -v kollek_storage-data:/data -v "$PWD":/backup alpine tar xzf /backup/kollek-storage.tar.gz -C /data
Reinicie a stack com docker compose up -d e acesse para verificar.
O comando que apaga tudo
Aviso
docker compose down -v remove os volumes nomeados, ou seja, o banco de dados e todo arquivo enviado. Nunca use a flag -v em uma instância em produção. O docker compose down simples é seguro e mantém os volumes intactos.