Back up every store: the restic module holds node-backup, the stores contribute their dumps

ADR 0214 / to-be 43. restic keeps one repository per machine and takes a nightly snapshot per
module — 14 daily, 8 weekly, 6 monthly — and restores beside the live data, never over it. postgres,
mssql and mongodb contribute a consistent dump; minio, influxdb, the vault, mailu, gitea and
nextcloud the directories that hold their data.
This commit is contained in:
2026-10-05 11:47:59 +02:00
parent 4224ac7252
commit 32cd92baeb
15 changed files with 724 additions and 6 deletions
+13 -1
View File
@@ -58,6 +58,11 @@
"type": "directory",
"mode": "0700"
},
{
"id": "dumps",
"type": "directory",
"mode": "0700"
},
{
"id": "net",
"type": "network",
@@ -113,5 +118,12 @@
}
}
]
}
},
"contributions": [
{
"seat": "node-backup",
"kind": "backup",
"content": "run docker exec mongodb-server sh -c 'printf \"password: %s\\n\" \"$(cat /run/secrets/root)\" > /tmp/.backup.yaml && mongodump --quiet --config /tmp/.backup.yaml --username root --authenticationDatabase admin --archive; s=$?; rm -f /tmp/.backup.yaml; exit $s' > ${dir:dumps}/all.archive.partial && mv ${dir:dumps}/all.archive.partial ${dir:dumps}/all.archive\npath ${dir:dumps}\n"
}
]
}