rclone
Configures rclone for remote file storage access inside Decree. Supports any rclone-compatible backend: Nextcloud, Dropbox, Google Drive, S3, and more.
Setup
./existential.sh run rclone
Opens an interactive rclone config session inside the existential-adhoc container — no host rclone install needed. Add as many remotes as you need and choose q when done.
Config is saved to automation/secrets/rclone/rclone.conf and loaded by the container at runtime.
nextcloud remote configures itselfIf Nextcloud is enabled, a nextcloud remote (WebDAV, using the already-rendered admin
credentials) is set up for you automatically by the nextcloud-rclone-remote migration —
it's what file_processor downloads through for every file event. No need to add it here unless you're pointing it somewhere else.
Backups
Every backup runs in one daemon, automation-backup, which mounts volumes/ and holds every
service's database credentials, so adding a service to the schedule is one cron file. Databases
are dumped (pg_dump, mysqldump, mongodump), volumes tarred and SQLite copied with
.backup, then sent with rclone. Nightly copies are kept 7 days, weekly ones 28.
- Say where they go:
./existential.sh run rclone, then name the destination when it asks. That writesEXIST_BACKUP_RCLONE_REMOTE; nothing is backed up until it is set. - Copy a cron per service you enabled, from
services/automation-backup/cron.example/intoservices/automation-backup/cron/:workspace-volume-backup-nightly.mdfirst, then each<service>-db-backup-nightly.mdor<service>-volume-backup-nightly.md. Each has a-weekly.mdtwin for longer retention. - Prove it before you need it: copy the active crons into
services/automation-backup/inbox/to run them once now, checkdocker exec automation-backup decree status, and look for the files on the remote. - Restore:
./existential.sh run backup-restore.
They live here and not in automation because this daemon calls no model: it can hold master
credentials and mount every volume, where a container that puts what it reads in front of a
model must not.