Backup Command
Manage backups for database attachments.
gordon backups
gordon backups <subcommand>
Subcommands:
list [domain]- List backups globally or for one domainrun <domain> [--db <name>]- Trigger an immediate backupdetect <domain>- Detect supported databases for a domainstatus- Show backup status across domains
Backup commands work both locally and remotely.
- Local mode (no
--remote) executes backups through in-process services.- Remote mode uses the admin API on the target instance.
gordon backups run <domain>auto-selects the database only when exactly one supported DB attachment is detected. If multiple DB attachments are present, pass--db <name>.
In normal usage, configure remotes once (gordon remotes ...) and run backup commands without per-command remote flags.
Examples
# List all backups
gordon backups list
gordon backups list --json
# List backups for one domain
gordon backups list app.example.com
# Trigger backup (auto-detect when exactly one DB attachment exists)
gordon backups run app.example.com
# Trigger backup for specific attachment name
gordon backups run app.example.com --db postgres
# Detect DB attachments
gordon backups detect app.example.com
# Status summary
gordon backups status
JSON Output
gordon backups list supports --json for machine-readable output.
gordon backups list --json
[
{
"domain": "app.example.com",
"db": "postgres",
"status": "completed",
"started_at": "2026-03-13T09:45:00Z",
"backup_id": "backup_20260313_094500"
}
]
Output Columns
list
<domain>\t<db>\t<status>\t<started_at>\t<backup_id>
detect
<name>\t<type>\t<host>\t<port>\t<image>
status
<domain>\t<db>\t<status>\t<started_at>
run
<domain>\t<db>\t<status>\t<started_at>\t<backup_id>\t<size_bytes>
Required Permissions
- Read operations (
list,status,detect) requireadmin:status:read. runrequiresadmin:config:write.