Duplicacy Web
Lock-free deduplication cloud backup with web UI.
Overview
Duplicacy is a lock-free deduplication backup solution developed by Gchen that revolutionizes cloud backup by allowing multiple clients to perform backups simultaneously without conflicts. Unlike traditional backup tools that require locking mechanisms, Duplicacy uses a unique algorithm that enables concurrent operations while maintaining data integrity through cross-computer deduplication. This approach makes it particularly valuable for organizations running multiple servers or users sharing storage backends across different machines.
The Duplicacy Web stack combines the core Duplicacy engine with a comprehensive web interface that simplifies backup management through an intuitive browser-based dashboard. The web UI eliminates the need for command-line expertise while providing advanced features like backup scheduling, storage monitoring, and multi-repository management. This Docker implementation packages the entire web edition into a containerized environment that handles configuration persistence and log management automatically.
This configuration targets IT professionals managing multi-machine environments, small businesses requiring reliable backup solutions, and homelab enthusiasts who need enterprise-grade deduplication without the complexity. The commercial web edition provides additional features beyond the open-source CLI version, including the graphical interface, advanced scheduling, and enhanced monitoring capabilities that justify its use in production environments.
Key Features
- Lock-free concurrent backup operations allowing multiple machines to backup simultaneously to shared storage
- Cross-computer deduplication that identifies identical chunks across different machines to minimize storage usage
- Multi-backend support including S3, Wasabi, Backblaze B2, Azure, Google Cloud Storage, SFTP, and local storage
- Web-based management interface with backup scheduling, progress monitoring, and repository browsing
- Snapshot-based versioning with configurable retention policies and point-in-time recovery
- Encryption-at-rest with client-side key management ensuring data security before transmission to storage backends
- Incremental backup engine that only uploads changed blocks while maintaining full restore capabilities
- Storage backend health monitoring with automatic retry logic and connection status reporting
Common Use Cases
- 1Multi-server environments where different machines need to backup to shared cloud storage without coordination
- 2Small businesses requiring automated backup scheduling with web-based monitoring and management
- 3Development teams backing up multiple workstations to cost-effective cloud storage with deduplication savings
- 4Homelab setups managing backup workflows across various services and personal data repositories
- 5Remote office locations needing centralized backup management through web interface without local IT staff
- 6Organizations transitioning from traditional backup solutions seeking modern cloud-native deduplication technology
- 7Managed service providers offering backup services to multiple clients with isolated storage backends
Prerequisites
- Minimum 1GB RAM available for deduplication processing and web interface operations
- Docker and Docker Compose installed with user namespace support for proper file permissions
- Port 3875 available for web interface access and not conflicting with other services
- Storage backend credentials configured (S3 keys, SFTP access, or cloud storage authentication)
- Understanding of backup retention policies and storage cost implications for chosen backends
- Valid commercial license for Duplicacy Web Edition features beyond basic CLI functionality
For development & testing. Review security settings, change default credentials, and test thoroughly before production use. See Terms
docker-compose.yml
docker-compose.yml
1services: 2 duplicacy: 3 image: saspus/duplicacy-web:latest4 container_name: duplicacy5 restart: unless-stopped6 environment: 7 USR_ID: 10008 GRP_ID: 10009 TZ: UTC10 volumes: 11 - duplicacy_config:/config12 - duplicacy_logs:/logs13 - duplicacy_cache:/cache14 - /path/to/data:/data:ro15 ports: 16 - "3875:3875"1718volumes: 19 duplicacy_config: 20 duplicacy_logs: 21 duplicacy_cache: .env Template
.env
1# Configure storage backend in UIUsage Notes
- 1Docs: https://duplicacy.com/guide.html
- 2Web UI at http://localhost:3875
- 3Lock-free deduplication - multiple clients can backup simultaneously
- 4Backends: local, SFTP, S3, Wasabi, B2, Azure, GCS, Dropbox, OneDrive
- 5Cross-computer dedup - share storage across machines
- 6Commercial license needed for web edition features
Quick Start
terminal
1# 1. Create the compose file2cat > docker-compose.yml << 'EOF'3services:4 duplicacy:5 image: saspus/duplicacy-web:latest6 container_name: duplicacy7 restart: unless-stopped8 environment:9 USR_ID: 100010 GRP_ID: 100011 TZ: UTC12 volumes:13 - duplicacy_config:/config14 - duplicacy_logs:/logs15 - duplicacy_cache:/cache16 - /path/to/data:/data:ro17 ports:18 - "3875:3875"1920volumes:21 duplicacy_config:22 duplicacy_logs:23 duplicacy_cache:24EOF2526# 2. Create the .env file27cat > .env << 'EOF'28# Configure storage backend in UI29EOF3031# 3. Start the services32docker compose up -d3334# 4. View logs35docker compose logs -fOne-Liner
Run this command to download and set up the recipe in one step:
terminal
1curl -fsSL https://docker.recipes/api/recipes/duplicacy-web/run | bashTroubleshooting
- Web UI shows 'Connection refused' errors: Verify container is running and port 3875 is not blocked by firewall or already in use by another service
- Backup jobs fail with permission denied: Check USR_ID and GRP_ID environment variables match the owner of mounted data directories and adjust accordingly
- High memory usage during backup operations: Increase available container memory or reduce chunk size in backup configuration to lower memory requirements
- Storage backend authentication failures: Verify cloud storage credentials are correctly configured and have appropriate permissions for read/write operations
- Deduplication not working across machines: Ensure all clients use identical storage backend configuration and encryption keys for proper chunk recognition
- Web interface becomes unresponsive during large backups: Monitor available disk space in cache volume and consider increasing cache size or adjusting concurrent job limits
Community Notes
Loading...
Loading notes...
Download Recipe Kit
Get all files in a ready-to-deploy package
Includes docker-compose.yml, .env template, README, and license
Ad Space
Shortcuts: C CopyF FavoriteD Download