Sign inSign up

rsaturns/backuparr

By rsaturns

•Updated about 10 hours ago

Backup your Arrs - Radarr, Sonarr, Plex, Jellyfin, Emby & more, to Drive, OneDrive, Dropbox

Image
Databases & storage
0

2.2K

rsaturns/backuparr repository overview

⁠Backuparr

Backup your Arrs.

Scheduled config/database backups for Radarr, Sonarr, Prowlarr, Profilarr, Bazarr, Tdarr, SABnzbd, Tautulli, Jellyfin, Emby, and Plex - each backed up through its own HTTP API, never by reading its config volume directly, except the media servers that need a mount: Jellyfin's backups folder (its API creates a backup but can't download it), Emby's data folder (Emby has no backup API), and Plex's data folder for its settings and server identity. Every backup goes to each destination you enable: Local storage, Google Drive, OneDrive, and Dropbox.

Everything - which apps to back up, their URLs/API keys, destinations, schedule, retention, and restores - is configured and triggered from a web UI, not environment variables.

⁠Features

  • Restore from the web UI, with live progress and a log (Profilarr is backup-only: it has no restore API)
  • Jellyfin 10.11+ through its own backup API: users, watch history, libraries and settings, with automated restore
  • Emby from its mounted data folder while it runs: users, watch history, playlists, collections and settings; restore while Emby is stopped
  • Plex through its own database export plus its settings and server identity, so a rebuilt server comes back as the same server with its shared users; sign in on plex.tv to fill in the token
  • Browse, download and delete past backups; retention and schedule are set in Settings
  • Optional Prowlarr discovery fills in your Radarr, Sonarr and SABnzbd URLs and API keys
  • Works with apps behind an authenticating reverse proxy: optional HTTP headers (with a Basic auth helper), each sent only to the apps you choose
  • Run summaries to Discord, Slack, Telegram, Gotify, ntfy and other webhooks
  • Local login on by default, and stored secrets are encrypted at rest
  • Published for linux/amd64 and linux/arm64

⁠Quick start

Add this to your existing compose file (the one that already defines radarr/sonarr/etc.) so it shares that stack's network:

services:
  backuparr:
    image: rsaturns/backuparr:latest
    container_name: backuparr
    restart: unless-stopped
    environment:
      - TZ=America/Los_Angeles
      - PUID=1000
      - PGID=1000
      # Optional - see Environment variables above.
      #- LOG_LEVEL=INFO
      #- BACKUPARR_FORCE_HTTPS=true
      #- BACKUPARR_DISABLE_AUTH=true
      #- BACKUPARR_SECRETS_KEY=
      #- RCLONE_CONFIG_PASS=
      # Changing this also means updating the ports: mapping below.
      #- WEBUI_PORT=8990
    ports:
      - "8990:8990"
    volumes:
      # config.json, rclone.conf, and local-destination backups.
      - /share/Container/backuparr:/config/backuparr
      # Optional: needed only to restore Bazarr - path to its config/backup folder.
      #- /share/Container/bazarr/backup:/mnt/bazarr-backup
      # Needed to back up Jellyfin - its backups folder (see the Jellyfin note).
      #- /share/Container/jellyfin/config/data/backups:/mnt/jellyfin-backups
      # Needed to back up Emby - its /config folder (see the Emby note).
      #- /share/Container/emby/config:/mnt/emby:ro
      # Needed to back up Plex - its "Plex Media Server" folder (see the Plex note).
      #- "/share/Container/plex/Library/Application Support/Plex Media Server:/mnt/plex:ro"

Then open http://<host>:8990 - the first visit is a one-time setup screen to create an admin account, then everything else is configured from the Settings tab.

⁠Tags

  • latest - the most recent tagged release
  • X.Y.Z (e.g. 1.6.0-beta) - a specific tagged release; pin one to control upgrades

Tag summary

Content type

Image

Digest

sha256:1867dc4af…

Size

64.4 MB

Last updated

about 10 hours ago

docker pull rsaturns/backuparr