Docker Volume Backup Or Restore
/install docker-volume-backup-or-restore
Docker Volume Backup Or Restore (v2.0)
Overview
This skill provides a secure, registry-backed workflow for migrating or backing up Docker volumes. Version 2.0 introduces a per-volume encryption architecture, creating separate encrypted archives for each volume. This improves reliability for large volume sets and eliminates path-parsing ambiguities during restoration.
Key features:
- Zero-Trust Restore: Files are copied out of the backup image using
docker cp. The backup image's code is never executed. - Per-Volume Encryption: Each volume is encrypted separately with AES-256-CBC (PBKDF2).
- Container Safety: Automatically stops containers to ensure data consistency, with an
--exclude-stopflag for critical infrastructure (like proxies or AI providers). - Registry Transport: Uses standard Docker registries as storage, making it easy to move data between any Docker-enabled hosts.
- Dry-Run Support: Preview actions before stopping containers or pushing data.
Workflow
1. Prerequisites
- Docker: Must be installed and running.
- Registry Login: Ensure you are logged in to your target registry (e.g.,
docker login). - Helper Image: The script uses a pinned
alpineimage for crypto operations. It must be pre-pulled for safety.
2. Backup Mode
Creates encrypted archives of all local volumes and pushes them as a single multi-layer image.
# Basic backup (auto-derives image name from hostname)
bash docker_volume_backup_or_restore.sh --backup --encrypt-password 'your-password'
# Backup with specific image and excluded containers
bash docker_volume_backup_or_restore.sh --backup-image user/repo:tag --encrypt-password 'pass' --exclude-stop proxy,db
What happens:
- Identifies all local volumes and running containers.
- Stops containers (except those in
--exclude-stop). - Mounts volumes into a trusted Alpine container.
- New in v2.0: Packages and encrypts each volume into its own
.tar.gz.encfile. - Builds a
scratch-based image containing only these encrypted archives. - Pushes the image to the registry.
- Restarts the stopped containers.
3. Restore Mode
Pulls a backup image and restores volumes to the local host.
bash docker_volume_backup_or_restore.sh --restore user/repo:tag --encrypt-password 'your-password'
What happens:
- Pulls the backup image.
- Creates a temporary container to
docker cpthe archives out (safely). - Discovers volume names from the archive filenames.
- Creates missing local volumes.
- For each volume: decrypts the archive and copies data into the volume using a trusted helper.
Arguments
--backup [IMAGE]: Start backup mode. Optional IMAGE override.--backup-image IMAGE: Explicit backup image reference.--restore IMAGE: Start restore mode using the specified image.--encrypt-password PASS: Required. Password for AES-256 encryption/decryption.--exclude-stop LIST: Comma-separated list of containers to keep running during backup.--dry-run: Show planned actions without executing them.
Safety and Tradeoffs
- Encryption: Uses
opensslAES-256-CBC with PBKDF2. Passwords are never stored in the image. - Data Integrity: Stopping containers is highly recommended to prevent partial writes.
- Storage: Large volumes will result in large images. Ensure your registry has sufficient quota and bandwidth.
- Overwrites: Restore mode will overwrite existing data if a volume with the same name already exists.
- Make sure OpenClaw is installed (local or Docker)
- Run the install command in chat:
/install docker-volume-backup-or-restore - After installation, invoke the skill by name or use
/docker-volume-backup-or-restore - Provide required inputs per the skill's parameter spec and get structured output
What is Docker Volume Backup Or Restore?
Robust Docker volume migration and backup using per-volume encrypted archives and registry-based transport. Supports dry-runs, container exclusion, and safe... It is an AI Agent Skill for Claude Code / OpenClaw, with 36 downloads so far.
How do I install Docker Volume Backup Or Restore?
Run "/install docker-volume-backup-or-restore" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.
Is Docker Volume Backup Or Restore free?
Yes, Docker Volume Backup Or Restore is completely free, licensed under MIT-0. You can download, install and use it at no cost.
Which platforms does Docker Volume Backup Or Restore support?
Docker Volume Backup Or Restore is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).
Who created Docker Volume Backup Or Restore?
It is built and maintained by HongWei Jiang (@ugvfpdcuwfnh); the current version is v2.0.0.