Salta ai contenuti
PortoPorto

Backup e ripristino

Il backup di Porto è un archivio portabile (tar compresso con un file JSONL per tabella e i file caricati, ancora cifrati): lo stesso formato per SQLite e PostgreSQL, quindi un backup fatto su un database si ripristina sull’altro. Le letture grezze dei sensori non sono incluse.

Finestra del terminale
porto backup --out /data/porto-2026-11-10.porto-backup

Con Docker:

Finestra del terminale
docker compose -f deploy/docker-compose.yml exec porto /porto backup --out /data/porto-$(date +%F).porto-backup

Il file finisce nel volume dei dati: copialo fuori dal server (un altro disco, un altro sito). Pianifica il backup dal cron dell’host o da un timer di systemd.

  1. Prepara un’installazione con la stessa versione di Porto del backup e la stessa PORTO_SECRET_KEY.

  2. Esegui il ripristino:

    Finestra del terminale
    porto restore --in porto-2026-11-10.porto-backup # su un database vuoto
    porto restore --in porto-2026-11-10.porto-backup --force # svuota prima il database
  3. Avvia il server e accedi di nuovo: le sessioni non sono incluse.

Il ripristino rifiuta un database che contiene già dei dati (senza --force) e un archivio di una versione dello schema diversa da quella del database. Per portare un backup su una versione più recente, ripristinalo con la sua versione e poi aggiorna (Aggiornamenti).

L’app desktop fa da sé backup nello stesso formato: uno al giorno, uno a ogni chiusura, quelli manuali e uno prima di ogni ripristino. Ne tiene 14 giornalieri e 5 di chiusura; i manuali non vengono mai cancellati. Il ripristino si avvia dal pannello. Vedi App desktop.

diCoste360.itCoste360.it

Porto è sviluppato da Coste360 SRL. Codice sorgente disponibile con licenza BSL 1.1; il marchio Porto è escluso dalla licenza.