• v0.6.4 c9ccd58b89

    v0.6.4 Stable

    SisyphusMD released this 2026-01-14 09:41:08 -08:00 | 96 commits to main since this release

    Fixed

    • Docker Container Issues:
      • Added procps package to Docker image to provide pkill and pgrep commands
      • 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
    • 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 logs from hanging with large log files (100k+ lines)
      • Improves performance for long-running backups with extensive logging

    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
  • v0.6.3 0342e6e143

    v0.6.3 Stable

    SisyphusMD released this 2026-01-13 20:57:48 -08:00 | 97 commits to main since this release

    Changed

    • Duplicacy Update: Updated Duplicacy to v3.2.5 (from v3.2.3)
    Downloads
  • v0.6.2 6b5a9daf87

    v0.6.2 Stable

    SisyphusMD released this 2026-01-13 20:47:43 -08:00 | 98 commits to main since this release

    Added

    • 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
  • v0.6.1 1cd520bd76

    v0.6.1 Stable

    SisyphusMD released this 2026-01-13 17:13:18 -08:00 | 99 commits to main since this release

    Added

    • 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
  • v0.6.0 c6e477f27e

    v0.6.0 Stable

    SisyphusMD released this 2026-01-13 16:26:36 -08:00 | 100 commits to main since this release

    Added

    • 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_THREADS configuration variable (default: 4)
      • Parallel upload/download threads for faster backups
      • Applied to backup, copy, restore, check, and prune operations
    • 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

    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
  • v0.5.1 99a559e7f8

    v0.5.1 Stable

    SisyphusMD released this 2026-01-13 11:57:54 -08:00 | 101 commits to main since this release

    Added

    • SSH public key display after bundle export for easy SFTP server configuration

    Fixed

    • Symlink for archiver.log now uses relative path, resolving correctly when logs directory is mounted outside container
    • Bundle backup (.old file) handling improved to remove existing backup before creating new one
    Downloads
  • v0.5.0 4d0638213d

    v0.5.0 Stable

    SisyphusMD released this 2026-01-13 11:57:25 -08:00 | 103 commits to main since this release

    Added

    • Docker Support: Run Archiver in containers on any platform
      • Interactive setup mode generates bundle file without Linux installation
      • Automated backups with cron scheduling or manual execution
      • Multi-architecture images (linux/amd64, linux/arm64) published to GHCR
    • Bundle Commands: archiver bundle export and archiver bundle import for managing configuration
    • Health Check: archiver healthcheck command for monitoring system health

    Changed

    • BREAKING: Renamed export/import to bundle terminology
      • archiver exportarchiver bundle export
      • archiver importarchiver bundle import
      • Directory: exports/bundle/
      • Environment: EXPORT_PASSWORDBUNDLE_PASSWORD
    • Bundle file is now always bundle.tar.enc (previous version saved as .old, no timestamps)
    • Cron jobs now scheduled for invoking user instead of root user
    • Logs now show storage target name (e.g., "Service: Synology") instead of generic "Archiver" during copy/wrap-up operations

    Fixed

    • Setup script now handles special characters (like $) in passwords and API keys correctly
    • Setup script now creates bundle file even if one wasn't imported
    • Setup script improved S3 region prompt with better examples and optional handling
    • Setup script and bundle-export script now work correctly in Docker (no SUDO_USER dependency)
    • Cron schedule now properly created from setup script for the correct user
    • Log viewer now properly exits when backup completes instead of hanging
    • Restored files now have correct ownership matching the invoking user
    • Directory ownership fixed when restoring to non-existent directory
    • Removed obsolete PRUNE_KEEP_ARRAY from log output
    • Better error messages when running setup on unsupported platforms

    Improved

    • Setup script auto-imports existing bundle files
    • Version pinning for reliable installations
    • Platform detection provides helpful Docker guidance for non-Linux systems
    • Cron instructions now show correct commands for user crontab

    Migration Notes

    Migrating from v0.4.x to v0.5.0 (Bundle Terminology)

    The export/import functionality has been renamed to use "bundle" terminology:

    1. Export file location changed: exports/ directory is now bundle/
    2. Commands renamed:
      • archiver exportarchiver bundle export
      • archiver importarchiver bundle import
    3. Bundle file naming: Files are now always named bundle.tar.enc (previous versions saved as .old, no timestamps)
    4. Environment variable: For Docker, EXPORT_PASSWORD is now BUNDLE_PASSWORD

    Action Required for existing export files:

    • Rename your exports/ directory to bundle/
    • Rename your export file to bundle.tar.enc
    • Use the new archiver bundle export and archiver bundle import commands going forward

    Migrating from Traditional Installation to Docker

    Docker installation is now the recommended deployment method. Legacy installation will be deprecated in v0.7.0.

    Steps to migrate:

    1. Export your configuration (from your current traditional install):

      archiver bundle export
      

      This creates bundle/bundle.tar.enc with your config and keys encrypted.

    2. Save your bundle password: Remember the password you used to encrypt the bundle - you'll need it for Docker.

    3. Set up Docker Compose:

      services:
        archiver:
          container_name: archiver
          image: ghcr.io/sisyphusmd/archiver:0.5.0
          restart: unless-stopped
          environment:
            TZ: "UTC" # Examples: "America/New_York", "Europe/London", "Asia/Tokyo"
            BUNDLE_PASSWORD: "your-bundle-password-here"
            CRON_SCHEDULE: "0 3 * * *"  # Optional - backup will wait for manual invocation if not set
          volumes:
            - /path/to/bundle.tar.enc:/opt/archiver/bundle/bundle.tar.enc
            - /path/to/logs:/opt/archiver/logs # Optional - for log persistence
            - /path/to/service_directories:/path/to/service_directories # Container path must match SERVICE_DIRECTORIES in your config.sh
          hostname: backup-server # Optional - used in backup snapshot IDs
      
    4. Important: Volume paths inside the container must match the SERVICE_DIRECTORIES paths in your config.sh. If your config has /home/user/data, mount it to the same path: -/home/user/data:/home/user/data

    5. Start the container:

      docker compose up -d
      
    6. Verify: Check logs with docker logs -f archiver

    Note: You can run both traditional and Docker installations side-by-side during migration for testing.

    Downloads
  • v0.4.1 9e8869f858

    v0.4.1 Stable

    SisyphusMD released this 2025-06-07 19:04:26 -07:00 | 106 commits to main since this release

    Fixed

    • Added missing restore function for S3 storage backend.
    • Fixed ownership of new local directory when restoring.
    Downloads
  • v0.4.0 8bb9f95807

    v0.4.0 Stable

    SisyphusMD released this 2025-06-06 22:38:00 -07:00 | 110 commits to main since this release

    Added

    • S3 storage backend support added alongside existing SFTP and B2 backends.

    Improved

    • Setup script explicitly checks for export file existence, skipping import gracefully if no exports exist.
    Downloads
  • v0.3.2 46e201f195

    v0.3.2 Stable

    SisyphusMD released this 2024-06-06 20:58:52 -07:00 | 125 commits to main since this release

    Improved

    • Added import and export functions to backup your config.sh and keys files
    • Setup script will auto-import any export file placed in the archiver repo directory
    • Setup script also ensures you have an export file, and places it in an 'exports' directory
    Downloads