Бэкап: образ restic-сайдкара и скрипт fs-backup
deploy/backup: образ на restic/restic:0.19.1 (+ sqlite, supercronic, tini), работает от uid 10001, как appuser. Скрипт fs-backup: - run: консистентная копия БД (VACUUM INTO + integrity_check), снимок в локальный репозиторий и на VPS (SFTP), теги players/matches, GFS-очистка (дни/недели/месяцы; именованные keep и pre-restore не удаляются), restic check; - list / status / verify / export (tar без сжатия; сжатие — только restic, репозиторий v2); - restore / import через промежуточную директорию: разворачивание в .restore-new внутри каждого тома, проверка (integrity_check, таблицы, число файлов, целостность tar), страховочный снимок pre-restore, двухфазная замена rename с файлом фазы и откатом; recover разбирает прерванное восстановление. Отказ при работающем app. Точка входа: без BACKUP_PASSWORD простой без рестарт-петли, первый снимок при пустом репозитории, расписание supercronic, healthcheck по возрасту последнего успеха. #64 Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_013jBxs9nBCk5nBdTLzcGz91
This commit is contained in:
@@ -0,0 +1,6 @@
|
||||
# В контекст сборки попадают ТОЛЬКО файлы образа. Всё остальное (в первую очередь приватный
|
||||
# ключ deploy/backup/id_backup, если он лежит здесь на ПК) в образ не попадёт.
|
||||
*
|
||||
!Dockerfile
|
||||
!fs-backup.sh
|
||||
!entrypoint.sh
|
||||
Reference in New Issue
Block a user