Overview
Borg UI can be easily deployed on Unraid servers using either the Community Applications (CA) plugin or manual Docker setup.Method 1: Community Applications (Recommended)
Install Community Applications
If not already installed:
- Go to Plugins tab
- Click Install Plugin
- Search for “Community Applications”
- Install the plugin
Search for Borg UI
- Click the Apps tab
- Search for “Borg UI” or “borg-web-ui”
- Click on the Borg UI application
Configure the container
Review and adjust the default settings if needed. See Configuration section below.
Method 2: Manual Docker Setup
If Borg UI is not yet available in Community Applications:Add path mappings
Click Add another Path, Port, Variable, Label or Device
Adjust the Host Path for Local Storage based on what directories you want to backup. Common options:
/mnt/user- All user shares/mnt/user/documents- Specific share/mnt/disk1- Specific disk
Configuration
Port Mapping
| Container Port | Host Port | Protocol | Description |
|---|---|---|---|
| 8081 | 8081 | TCP | Web interface |
You can change the Host Port to any available port on your Unraid server if 8081 is already in use.
Path Mappings
Application Data
Borg Cache
Backup Sources
Environment Variables
Required
| Variable | Value | Description |
|---|---|---|
PUID | 99 | User ID (99 = nobody on Unraid) |
PGID | 100 | Group ID (100 = users on Unraid) |
TZ | America/New_York | Your timezone |
To find your timezone: List of tz database time zones
Optional
| Variable | Default | Description |
|---|---|---|
PORT | 8081 | Web interface port |
LOG_LEVEL | INFO | Logging level (DEBUG, INFO, WARNING, ERROR) |
INITIAL_ADMIN_PASSWORD | admin123 | Initial admin password |
ENVIRONMENT | production | Application environment |
LOCAL_MOUNT_POINTS | /local | Comma-separated list of mount points |
Borg Timeouts (for large repositories)
| Variable | Default | Description |
|---|---|---|
BORG_INFO_TIMEOUT | 600 | borg info operations (seconds) |
BORG_LIST_TIMEOUT | 600 | borg list operations (seconds) |
BORG_INIT_TIMEOUT | 300 | borg init operations (seconds) |
BORG_EXTRACT_TIMEOUT | 3600 | borg extract operations (seconds) |
SCRIPT_TIMEOUT | 120 | Pre/post backup scripts (seconds) |
Docker Socket (Optional)
To enable stopping/starting other Docker containers during backups:Adding Redis for Faster Archive Browsing
For 600x faster archive browsing, add a Redis container:Unraid-Specific Features
Backing Up Array Data
Borg UI can backup your Unraid array data:- Mount user shares:
/mnt/user→/local - Create repository pointing to local path or remote SSH server
- Configure source directories:
/local/appdata- Docker persistent data/local/documents- User files/local/media- Media files
Backing Up Specific Disks
To backup individual disks:-
Add path mapping for each disk:
-
Create repository with source:
/disk1
VM/Docker Integration
Stop containers/VMs before backup using pre-backup scripts:- Mount Docker socket (see Docker Socket)
-
Create pre-backup script:
-
Create post-backup script:
Accessing the Interface
Local Access
- Username:
admin - Password:
admin123
Via Unraid WebUI
The container icon in the Docker tab will link directly to the web interface.Reverse Proxy via Nginx Proxy Manager
Many Unraid users run Nginx Proxy Manager. See the Reverse Proxy guide for configuration.Managing the Container
View Logs
- Go to Docker tab
- Click on borg-web-ui container
- Select Logs
Update Container
Auto-Update
Consider using the Docker Auto Update plugin:- Install from CA: “Docker Auto Update”
- Configure to auto-update borg-web-ui
- Set update schedule (e.g., weekly)
Backup Best Practices
What to Backup
Critical data
Critical data
/mnt/user/appdata- Docker configurations- User share data (documents, photos, etc.)
- VM images (if not too large)
What NOT to backup
What NOT to backup
/mnt/cache- Temporary files- Downloaded media being processed
- System files (Unraid itself)
Remote Backup Targets
Recommended remote backup destinations:- Another local server via SSH
- Cloud storage - Hetzner Storage Box, BorgBase
- External drive mounted via Unassigned Devices plugin
Scheduling
Recommended schedule:- AppData: Daily at 2 AM
- User files: Daily at 3 AM
- Media: Weekly on Sunday at 4 AM
Troubleshooting
Container won’t start
- Check logs in Docker tab
- Verify port 8081 is not in use:
- Try different host port
Permission errors
- Verify PUID=99 and PGID=100
- Check ownership of appdata:
- Fix if needed:
Cannot access files
- Verify path mappings are correct
- Check host path exists:
- Ensure Access Mode is Read/Write
Backups failing
- Check repository is accessible
- Verify source paths are mounted correctly
- Check available disk space
- Review logs in Borg UI interface
Next Steps
Reverse Proxy
Set up SSL with Nginx Proxy Manager
Docker Compose
Alternative deployment method