Aktualizace a zálohy¶
Aktualizace (Docker)¶
Databázové migrace se provedou automaticky při startu kontejneru. Před aktualizací si vždy udělejte zálohu (viz níže) a projděte si changelog, hlavně sekce BREAKING.
Neaktualizujte během akce
Aktualizace na pár sekund restartuje aplikaci a odpojí skenery i agenty. Plánujte ji mimo provoz.
Co zálohovat¶
| Data | Kde | Jak |
|---|---|---|
| Databáze | volume <projekt>_postgres_data |
pg_dump |
| Obrázky a loga štítků | volume <projekt>_private_media |
archiv svazku |
| Konfigurace | soubor .env |
kopie (obsahuje hesla, ukládejte bezpečně) |
Záloha¶
cd odbavto
mkdir -p backup
# databaze
docker compose exec -T db sh -c 'pg_dump -U "$POSTGRES_USER" -Fc "$POSTGRES_DB"' \
> backup/odbavto-$(date +%F).dump
# obrazky stitku
docker run --rm -v odbavto_private_media:/data -v "$PWD/backup":/backup alpine \
tar czf /backup/private_media-$(date +%F).tar.gz -C /data .
Název svazku odpovídá COMPOSE_PROJECT_NAME (zde odbavto). Seznam svazků vypíše docker volume ls.
Zálohu spouštějte pravidelně, např. cronem každou noc, a ukládejte ji i mimo server.
Obnova¶
cd odbavto
docker compose stop web
# databaze
docker compose exec -T db sh -c 'pg_restore -U "$POSTGRES_USER" -d "$POSTGRES_DB" --clean --if-exists' \
< backup/odbavto-2026-10-30.dump
# obrazky stitku
docker run --rm -v odbavto_private_media:/data -v "$PWD/backup":/backup alpine \
sh -c 'tar xzf /backup/private_media-2026-10-30.tar.gz -C /data'
docker compose start web
Lokální instalace¶
Celá data jsou v souboru db.sqlite3 a ve složce private_media/. Zálohujte je při zastaveném serveru. Postup aktualizace najdete v kapitole Lokální instalace.