-
v0.8.1 Stable
released this
2026-04-21 18:19:12 -07:00 | 205 commits to main since this releaseAdded
runEntrypoint Mode: New container mode for one-shot non-interactive command invocation, designed for Kubernetes Jobs / init containers and other CI flows.docker run ... archiver:0.8.1 run <subcommand>decrypts the bundle, execs the subcommand, and the container's exit code equals the subcommand's exit code. Whitelisted subcommands:auto-restore,snapshot-exists,healthcheck. Long-running or async commands (start,stop,pause, etc.) are intentionally rejected with exit code2.
Changed
- Internal: Renamed
lib/features/duplicacy.shtolib/features/duplicacy-backup.shfor symmetry withlib/features/duplicacy-restore.sh(introduced in 0.8.0). No user-visible change. - Internal: Extracted bundle decrypt + import logic in
docker-entrypoint.shinto aprepare_bundle()helper, reused by both the default daemon path and the newrunmode. Behavior of existinginitand daemon modes is unchanged.
Downloads
-
Source code (ZIP)
1 download
-
Source code (TAR.GZ)
1 download
-
v0.8.0 Stable
released this
2026-04-21 16:38:36 -07:00 | 208 commits to main since this releaseAdded
- Non-interactive Restore Commands: Two new subcommands for automated disaster recovery flows (e.g. Kubernetes init containers)
archiver snapshot-exists— probes every configured storage target forSNAPSHOT_IDand short-circuits on the first hit; exit codes0=exists,1=not found,2=undetermined,3=lock heldarchiver auto-restore— iterates storage targets in order and restores from the first target that has the requested snapshot; env-driven (SNAPSHOT_ID,LOCAL_DIRrequired;REVISION,STORAGE_TARGET,OVERWRITE,DELETE_EXTRA,HASH_COMPARE,IGNORE_OWNERSHIP,RESTORE_THREADSoptional)
- Shared Restore Library: Extracted duplicacy restore plumbing (storage target resolution, repo init, revision listing, restore) into
lib/features/duplicacy-restore.sh, shared by interactiverestore,snapshot-exists, andauto-restore
Fixed
archiver healthcheckExit Code: The dispatcher previously clobbered the healthcheck's exit status to0, causing Docker healthchecks based onarchiver healthcheckto always report healthy. It now propagates the underlying exit code
Downloads
-
Source code (ZIP)
1 download
-
Source code (TAR.GZ)
0 downloads
- Non-interactive Restore Commands: Two new subcommands for automated disaster recovery flows (e.g. Kubernetes init containers)
-
v0.7.1 Stable
released this
2026-04-14 13:09:37 -07:00 | 210 commits to main since this releaseAdded
- Podman Support: Container detection now recognizes Podman (
/run/.containerenv) in addition to Docker (/.dockerenv), removing the need to mount a fake.dockerenvfile - Host Management Tools: Added
systemdandzfsutils-linuxpackages to the container imagesystemctl— manage host services from restore scripts (start, stop, mask, unmask, etc.)zfs— take ZFS snapshots before restore operations (requires/dev/zfsmount)- Requires
SYSTEMCTL_FORCE_BUS=1env var and D-Bus socket + systemd unit directory mounts
- Security Hardening: Added
cap_drop: ALLwith explicitcap_addto compose.yaml and README examplesDAC_OVERRIDE— required for writing to directories owned by other UIDsSETGID— required for cron to execute scheduled jobsno-new-privileges:true— recommended security option
- Socket Documentation: Documented mounting options for Podman socket, systemd D-Bus socket, systemd unit directory, and ZFS device node with per-socket security warnings
Changed
- Updated available tools list in example scripts and migration guide to include
systemctlandzfs
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
1 download
- Podman Support: Container detection now recognizes Podman (
-
v0.7.0 Stable
released this
2026-01-22 18:19:07 -08:00 | 216 commits to main since this release⚠️ BREAKING CHANGES
- Docker-Only Deployment: Direct installation on host systems is no longer supported. See migration guide.
Added
- Graceful Stop: Stop command respects backup stage, completing service cleanup before termination
- New
archiver stop --immediateflag for emergency termination - Sends summary notification with runtime and error count
- New
- Docker Compose Graceful Shutdown: Added
stop_grace_period: 2mto ensure proper service cleanup when stopping containers - Migration Documentation: Comprehensive guides for migrating legacy installations (v0.3.2+) to Docker v0.7.0
- Legacy to Docker migration guide
- Configuration editing in Docker
- Local storage setup
- SSH key management
Improved
- Prune Operation: Now uses
-exhaustiveflag to remove orphaned chunks from manually deleted snapshots and incomplete backups - Notifications: Include hostname and timestamp; respect TZ environment variable
- Bundle Export: Offers to reuse BUNDLE_PASSWORD environment variable
- Storage Names: Automatically sanitize storage names with hyphens for Bash compatibility
- Code Organization: Restructured lib directory into core/features/scripts
Changed
- Streamlined documentation for Docker-only workflow
- SFTP SSH Key Path: Hardcoded to
/opt/archiver/keys/id_ed25519for Docker consistency- Removed
STORAGE_TARGET_X_SFTP_KEY_FILEconfiguration variable - Migrating users: Old variable in config.sh will be safely ignored
- Removed
Removed
- Legacy/direct installation support and related commands
Downloads
-
Source code (ZIP)
1 download
-
Source code (TAR.GZ)
1 download
-
v0.6.5 Stable
released this
2026-01-14 13:15:27 -08:00 | 271 commits to main since this releaseAdded
- Container Tools: Added text editors and network utilities to Docker image
nano- Simple text editor for quick file editsvim- Full-featured text editoriputils-ping- Network connectivity testing
Changed
- Documentation: Updated README to prioritize
archiver logscommand overdocker logs - Examples: Updated service script examples with complete list of available tools
Downloads
-
Source code (ZIP)
1 download
-
Source code (TAR.GZ)
1 download
- Container Tools: Added text editors and network utilities to Docker image
-
v0.6.4 Stable
released this
2026-01-14 09:41:08 -08:00 | 272 commits to main since this releaseFixed
- Docker Container Issues:
- Added
procpspackage to Docker image to providepkillandpgrepcommands - Fixes "command not found" errors when stopping backup processes
- Resolves container shutdown hangs caused by orphaned processes
- Improved graceful shutdown by explicitly terminating log tailer process
- Added
- Bundle Export: Fixed bundle backup verification to prevent data loss
- Now verifies the backup file exists before continuing with export
- Exits with error if backup operation fails instead of proceeding
- Docker Logs: Changed log tailer to show only new logs (
tail -n 0)- Prevents
docker logsfrom hanging with large log files (100k+ lines) - Improves performance for long-running backups with extensive logging
- Prevents
Changed
- Docker Volume Mount: Updated documentation to mount bundle directory instead of single file
- Resolves "Device or resource busy" errors during bundle export
- Allows proper file operations within mounted directory
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
1 download
- Docker Container Issues:
-
v0.6.3 Stable
released this
2026-01-13 20:57:48 -08:00 | 273 commits to main since this releaseChanged
- Duplicacy Update: Updated Duplicacy to v3.2.5 (from v3.2.3)
Downloads
-
Source code (ZIP)
1 download
-
Source code (TAR.GZ)
1 download
-
v0.6.2 Stable
released this
2026-01-13 20:47:43 -08:00 | 274 commits to main since this releaseAdded
- SQLite3 Support: sqlite3 package now included in container image
- Enables database operations and backups directly from service scripts
- Useful for services using SQLite databases
Documentation
- Added comprehensive list of available tools and packages in example service scripts
- Documents all available tools: duplicacy, docker, sqlite3, curl, wget, ssh, openssl, etc.
- Clarifies Docker socket requirement for docker commands
Downloads
-
Source code (ZIP)
1 download
-
Source code (TAR.GZ)
1 download
- SQLite3 Support: sqlite3 package now included in container image
-
v0.6.1 Stable
released this
2026-01-13 17:13:18 -08:00 | 275 commits to main since this releaseAdded
- Docker CLI Support: Docker CLI now included in container image
- Enables service-specific backup scripts to control other Docker containers
- Version-locked to Docker CLI 29.1.4-1 for reproducible builds
- Required for backup scripts that need to exec commands in other containers or manage container state
Documentation
- Added requirement to mount Docker socket (
/var/run/docker.sock) for service scripts that need Docker access - Added security warning about Docker socket access implications
Downloads
-
Source code (ZIP)
1 download
-
Source code (TAR.GZ)
1 download
- Docker CLI Support: Docker CLI now included in container image
-
v0.6.0 Stable
released this
2026-01-13 16:26:36 -08:00 | 276 commits to main since this releaseAdded
- Local Disk Storage Backend: Support for local disk as a storage target alongside SFTP, B2, and S3
- Ideal as primary backup target with fast local backups
- Can be combined with remote storage for off-site redundancy
- Performance Optimization: Configurable thread count for duplicacy operations
- New
DUPLICACY_THREADSconfiguration variable (default: 4) - Parallel upload/download threads for faster backups
- Applied to backup, copy, restore, check, and prune operations
- New
- Interactive Restore Options: Advanced restore configuration wizard
- Hash-based file detection option
- Overwrite existing files option
- Delete files not in snapshot option
- Ignore ownership option
- Continue on errors option
- Customizable thread count for restore operations
- Graceful Container Shutdown: Docker containers handle SIGTERM properly
- Running backups are stopped gracefully on
docker stop - Prevents data corruption from forced termination
- Running backups are stopped gracefully on
Improved
- Restore operations now have configurable performance and behavior options
- Backup operations complete faster with parallel threading
- Docker container lifecycle management with proper signal handling
Downloads
-
Source code (ZIP)
1 download
-
Source code (TAR.GZ)
1 download
- Local Disk Storage Backend: Support for local disk as a storage target alongside SFTP, B2, and S3