{ "slug": "docker-volume-backup", "kind": "ansible", "metadata": { "name": "Docker Volume Backup", "description": "Backs up data from a Docker container path by auto-attaching all container volumes into a temporary backup container. Creates timestamped tar.gz archives with configurable retention.", "tags": [ "docker", "backup", "volume", "container" ], "icon": { "provider": "mdi", "id": "harddisk", "color": "emerald" }, "draft": true, "version": { "name": "1", "source_dep_name": "manual/docker-volume-backup" } }, "variables": [ { "title": "Backup", "name": "backup", "items": [ { "name": "container_name", "type": "str", "title": "Container Name", "required": true }, { "name": "backup_retention_days", "type": "int", "title": "Retention Days", "required": false, "default": 14, "description": "Delete backup archives older than this many days", "config": { "slider": true, "min": 1, "max": 365, "step": 1, "placeholder": "14", "unit": "days" } }, { "name": "backup_container_path", "type": "str", "title": "Backup Path", "required": true, "description": "Path inside the container that should be archived" }, { "name": "stop_containers_during_backup", "type": "bool", "title": "Stop Backup", "required": false, "default": false, "description": "If enabled, stop the container before backup and start it again afterwards if it was running" } ] }, { "title": "Internal", "name": "internal", "items": [ { "name": "backup_timestamp", "type": "str", "title": "Backup Timestamp", "required": false, "default": "" }, { "name": "backup_root", "type": "str", "title": "Backup Root", "required": false, "default": "/backups", "config": { "placeholder": "/backups" } }, { "name": "backup_archive_name", "type": "str", "title": "Backup Archive Name", "required": false, "default": "" }, { "name": "item", "type": "str", "title": "Loop Item", "required": false, "default": "" }, { "name": "old_backups", "type": "str", "title": "Old Backups", "required": false, "default": "" } ] } ] }