Documentation Index
Fetch the complete documentation index at: https://mintlify.com/karanhudia/borg-ui/llms.txt
Use this file to discover all available pages before exploring further.
Quick Start Guide
Get from zero to your first backup in under 5 minutes using Docker.Pull and Run Borg UI
/home/yourusername with the directory you want to back up. This mounts your host directory to /local inside the container.- Maps port 8081 for web access
- Creates
borg_datavolume for application data (database, SSH keys, logs) - Creates
borg_cachevolume for Borg’s repository cache (improves performance) - Mounts your data directory to
/localin the container
Access the Web Interface
- Username:
admin - Password:
admin123
Create Your First Repository
- Click “Repositories” in the sidebar
- Click “Create Repository” button
- Fill in the repository details:
- Click “Create” - the repository will be initialized
Configure Source Directories
- In the repository details page, find “Source Directories”
- Click “Add Source”
- Enter the path to back up:
/local/Documents(or any directory you mounted) - Optionally add exclude patterns:
*.tmpnode_modules.git
/local prefix corresponds to your mounted volume. If you mounted /home/yourusername:/local, then /local/Documents backs up /home/yourusername/Documents on your host.Run Your First Backup
- Click the “Backup Now” button in the repository details
- Optionally add a custom archive name or let it auto-generate
- Watch the real-time progress:
- Current file being processed
- Backup speed (MB/s)
- Data statistics (original size, compressed, deduplicated)
- Estimated time remaining
What’s Next?
Schedule Automatic Backups
Browse & Restore Files
Configure Notifications
SSH Remote Backups
Pro Tips
Use Docker Compose for better management
Use Docker Compose for better management
docker run, use Docker Compose for easier management:Create a docker-compose.yml file:Add Redis for 600x faster archive browsing
Add Redis for 600x faster archive browsing
docker-compose.yml to include Redis:Set correct file permissions with PUID/PGID
Set correct file permissions with PUID/PGID
-
On your host, run:
-
Add these as environment variables:
-
Restart the container:
Mount multiple directories
Mount multiple directories
/local/home/Documents/local/www/html/local/photos/2024
/local prefix is just a convention. You can use any container path, but remember to set LOCAL_MOUNT_POINTS environment variable to match:Common First-Time Questions
Where are my backups actually stored?
Where are my backups actually stored?
/local/backups/borg-repo inside the container.Since /local is mapped to /home/yourusername on your host, the actual location on your host is:Can I back up to an external drive?
Can I back up to an external drive?
/backup/borg-repo.How do I restore files?
How do I restore files?
- Go to Repositories → Select your repository
- Click on Archives tab
- Select the archive (backup snapshot) you want to browse
- Navigate through the file tree
- Select files/folders and click “Restore”
- Choose the destination path
What's the difference between encryption types?
What's the difference between encryption types?
- Encryption key is stored in the repository
- Easier to work with on multiple machines
- Key is backed up with repository
- Protected by your passphrase
- Encryption key is stored separately on your local machine
- More secure (key not in repository)
- You must manage the keyfile yourself
- Required on each machine accessing the repository
repokey for simplicity, keyfile for maximum security.Can I access the container from other devices?
Can I access the container from other devices?
localhost with your server’s IP address:Troubleshooting
Container won't start
Container won't start
- Port 8081 already in use → Change to different port:
-p 8082:8081 - Volume permission errors → Set PUID/PGID to match your user
Can't access mounted directories
Can't access mounted directories
- Verify the mount path exists on your host
- Check container can see the mount:
- Set correct PUID/PGID:
Add to environment:
PUID=1000andPGID=1000
Backup is very slow
Backup is very slow
- Full data read and chunking
- Building repository cache
- Calculating deduplication
- Use fast compression like
lz4instead ofzliborlzma - Exclude unnecessary files (node_modules, .git, caches)
- Ensure good disk I/O on both source and repository
Next Steps
Now that you have Borg UI running:- Set up automated backups - Use the visual cron builder
- Configure notifications - Get alerts when backups succeed or fail
- Enable Redis caching - Speed up archive browsing by 600x
- Set up SSH backups - Back up to remote servers
- Read security best practices - Keep your backups secure