Skip to content
HomeKnowledge BaseStatisticsChangelog GitHub Discord Email
operations / Backups and Restores

No results for ""

Backups and Restores

Automated Backups

Demyx runs a daily cron that backs up all apps automatically. Enable it in demyx host edit:

bash
DEMYX_BACKUP_ENABLE=true

Then restart: demyx host restart

The daily cron runs demyx backup all — creating a full backup of each app's files and database.

Manual Backups

bash
# Full backup (files + database)
demyx backup domain.tld

# Database only
demyx backup domain.tld -d

# Config files only (compose.yml + .env)
demyx backup domain.tld -c

# Back up all apps
demyx backup all

# Backup and send to custom path (e.g. mounted external drive)
demyx backup domain.tld --path=/mnt/backups

# Backup Traefik SSL certificates
demyx backup traefik

Listing Backups

bash
demyx backup domain.tld -l

Shows all available backup archives with file sizes and dates.

Restoring

bash
# Full restore (removes existing app first)
demyx restore domain.tld

# Restore from a specific date
demyx restore domain.tld --date=2025-10-01

# Database only restore
demyx restore domain.tld -d

# Skip confirmation
demyx restore domain.tld -f

Backup Rotation

Old backups are pruned automatically by the daily cron based on the DEMYX_BACKUP_LIMIT setting in demyx host edit. Set the number of days to retain:

bash
DEMYX_BACKUP_LIMIT=7

Off-Site Backups

Use --path to move backups to an external mount after creation:

bash
demyx backup domain.tld --path=/mnt/s3-bucket/demyx-backups

Or combine with a cron script — see Developer: Custom Cron.