++ add backup totale applicativo

This commit is contained in:
2026-07-29 12:34:38 +02:00
parent 2fa76d5073
commit c6abef977d
14 changed files with 864 additions and 11 deletions

View File

@@ -397,7 +397,31 @@ Un aggiornamento ordinario non richiede alcun intervento manuale.
## Backup e ripristino
### Cosa salvare
### Dall'applicazione: pacchetto `.zip` (consigliato)
*Backup e import* → **Scarica backup completo**. Produce un unico `.zip` con
tutti i dati gestionali, gli utenti e tutti i file caricati (PDF dei territori,
miniature, logo). È la via da usare per spostare o rimettere in piedi
un'installazione senza toccare i container.
Sulla stessa pagina, **Ripristina backup** ricarica il pacchetto: sostituisce i
dati gestionali correnti *e* i file caricati.
> **Dopo un ripristino tutti gli utenti — amministratore compreso — devono
> impostare una nuova password.** Il pacchetto contiene gli hash delle password
> di ogni account: chi lo ha avuto in mano ha potuto tentarne il crack offline,
> quindi le vecchie credenziali non sono più considerate sicure. Al primo
> accesso l'applicazione resta bloccata sulla schermata di cambio password.
Il pacchetto **non** contiene `APP_KEY`: i nomi dei proclamatori sono cifrati
con quella chiave, quindi il ripristino va fatto su un'installazione che ha la
**stessa** `APP_KEY` di quando il backup è stato creato.
Il tetto per l'upload è **256 MB** (`client_max_body_size` in
`docker/nginx/default.conf` e `upload_max_filesize`/`post_max_size` in
`docker/php/php.ini`). Oltre quella soglia usa il backup dei volumi qui sotto.
### Dai volumi: cosa salvare
| Volume | Contenuto | Nel backup |
|----------------|------------------------------------------------------|:----------:|
@@ -568,9 +592,13 @@ docker compose --profile dev up -d --build
- Filtri per utente e tipo evento, con diff prima/dopo
- Pulizia automatica schedulata secondo la retention configurata
### XML Exchange
### Backup e import
- **Backup completo `.zip`**: dati gestionali, utenti e file caricati (PDF
territori, miniature, logo) in un unico pacchetto scaricabile e ripristinabile
- Ripristino da pacchetto, con cambio password obbligatorio per tutti gli utenti
- Import ed export XML dell'intero set di dati gestionali (senza i file)
- Conversione di dump SQL legacy in XML compatibile
- Import ed export XML dell'intero set di dati gestionali
- Import massivo dei PDF dei territori da cartella o archivio ZIP
### Zone e tipologie
- Gestione inline: aggiungi, rinomina, attiva/disattiva, elimina