Help centre / Backups and restore
Backups and restore
Every night, the database and every file, in one archive. Here is what is in it, where it goes, and how to put it back.
- Every night at 02:00On
- Keep the last 3030 kept
- Download a copyDownload
What is backed up
One ZIP holds everything: the SQLite database, taken with SQLite’s own online backup so it is consistent even while people are using the app, and every uploaded file, in the same folder structure the app keeps. A small backup.json inside records when it was taken, by what, and how many files it holds.
When
Once a night at 02:00 in the server’s own time zone. The newest 30 archives are kept and older ones are removed, so a file deleted from a request pack has left every backup within 30 days.
Under Settings, then Backups, an admin sees whether the nightly run is on and how many it keeps, then every archive listed with its date, its size, how many files it holds beside the database, and whether it was taken nightly or by hand. Each row has a Download link. The Back up now button takes one straight away.
Where the copies go
Backups are written to a folder beside the database. If you run Docsroom yourself, choose it with these settings:
# Where backups are written (default: backups/ next to data/)
BACKUP_DIR=/srv/docsroom/backups
# When to take it and how many to keep
BACKUP_TIME=02:00
BACKUP_KEEP=30
# Set this to turn the nightly run off altogether
BACKUP_SCHEDULE=off- Two-factor sign-inOn
- Request links90 days
- Where you are signed in2 devices
- Backups30 kept
Taking one now
Before an upgrade, or before anything you would rather be able to undo, take a backup by hand, either with the Back up now button on the Settings page or on the server. It is recorded like any other.
npm run backupRestoring
Stop the app first; a restore refuses to run while the app holds the database. Then point the restore at the archive you want. It replaces the database and the uploads folder with the contents of that archive, and nothing else.
npm run restore -- backups/docsroom-20260905-020000Z.zipStart the app again and sign in. Everything is as it was at the moment the backup was taken, so anything added since is gone and everyone signs in again. Reminders scheduled after that moment will not be sent twice; the schedule looks forward from when the app comes back. The steps are written out in docs/DEPLOY.md.
Keep one somewhere else. Now and then, download last night’s archive from the list and keep it away from the server, so there is a copy that does not depend on it.
Exporting a business or person
A backup is for us to put the whole service back. If you want your own copy of the files for a business or person, or you are leaving, use Download all files under Actions on its page: every file, organised by pack and request, as one ZIP. You can do that at any time on any plan, and it is recorded in the download history.