Add KEEP_LAST environment variable to always preserve the N most recent backups regardless of age, preventing data loss when backups haven't been created for extended periods. Defaults to 10 copies.
This commit is contained in:
@@ -12,6 +12,7 @@ services:
|
||||
- DB_FILE
|
||||
- CRONTAB
|
||||
- DELETE_AFTER
|
||||
- KEEP_LAST
|
||||
- TZ
|
||||
- MINIO_PATH
|
||||
- MINIO_ACCOUNT_ID
|
||||
@@ -28,6 +29,7 @@ services:
|
||||
DB_FILE=/data/db.sqlite
|
||||
CRONTAB="00 06 * * *"
|
||||
DELETE_AFTER=10
|
||||
KEEP_LAST=10
|
||||
TZ=Asia/Novosibirsk
|
||||
MINIO_PATH=myminio://sqlite/master/
|
||||
MINIO_ACCOUNT_ID=account
|
||||
@@ -43,6 +45,18 @@ HEALTHCHECK_UUID=00000000-0000-0000-0000-000000000000
|
||||
1. myminio - системно! не менять
|
||||
2. проверьте настройки локации, не должно быть пусто
|
||||
3. DELETE_AFTER - в днях
|
||||
4. KEEP_LAST - минимальное число копий, которые сохраняются всегда
|
||||
|
||||
## Ротация
|
||||
|
||||
Удаление старых бекапов работает по двум условиям одновременно:
|
||||
|
||||
1. бекап старше `DELETE_AFTER` дней
|
||||
2. и при этом не входит в `KEEP_LAST` самых свежих копий
|
||||
|
||||
То есть последние `KEEP_LAST` бекапов не удаляются никогда, даже если они старше `DELETE_AFTER` дней. Это защищает от потери всех копий, если контейнер долго стоял и новые бекапы не создавались.
|
||||
|
||||
`KEEP_LAST` по умолчанию `10`, если переменная не задана.
|
||||
|
||||
## Healthchecks
|
||||
|
||||
|
||||
Reference in New Issue
Block a user