Skip to content

mlapaglia/Borgitory

Repository files navigation

Borgitory

codecov build sponsors docker pulls pypi downloads Read the Docs

borgbackup version rclone version fuse3 version

borgitory logo

Borgitory is a comprehensive web-based management interface for BorgBackup repositories that provides real-time monitoring, automated scheduling, and cloud synchronization capabilities. It offers complete backup lifecycle management including on-demand backups, automated pruning policies, interactive archive browsing with file downloads, and cloud sync to S3-compatible storage via Rclone. The FastAPI powered system features a modern responsive web interface built with HTMX, and Tailwind CSS.

Quick Start

Prerequisites

  • Docker Installation (Recommended): Docker with Docker Compose for containerized deployment
  • PyPI Installation: Python 3.13+ for direct installation from PyPI

Installation

Option 1: Docker Installation (Recommended)

  1. Pull and run the Docker image

    # Using Docker directly
    docker run -d \
      -p 8000:8000 \
      -v ./data:/app/data \
      -v /path/to/backup/sources:/backup/sources:ro \
      -v /path/to/borg/repos:/repos \
      --cap-add SYS_ADMIN \
      --device /dev/fuse \
      --name borgitory \
      mlapaglia/borgitory:latest

    Or using Docker Compose (create a docker-compose.yml):

    version: '3.8'
    services:
      borgitory:
        image: mlapaglia/borgitory:latest
        ports:
          - "8000:8000"
        volumes:
          - ./data:/app/data # database and encryption key location
          - /path/to/backup/sources:/sources:ro
          - /path/to/any/backup/repos:/repos:ro
        cap_add:
          - SYS_ADMIN # optional, needed to mount borg archives and browse them
        devices:
          - /dev/fuse # borg uses FUSE to mount archives
        restart: unless-stopped
    docker-compose up -d
  2. Access the web interface

image

Option 2: PyPI Installation

Install Borgitory directly from PyPI:

# Install stable release from PyPI
pip install borgitory

# Start the server
borgitory serve

# Or run with custom settings
borgitory serve --host 0.0.0.0 --port 8000

PyPI Installation Requirements:

  • Python 3.13 or higher
  • BorgBackup installed and available in PATH
  • Rclone (optional, for cloud sync features)
  • FUSE (optional, for browsing archives)

Windows Requirements:

  • WSL2 (Windows Subsystem for Linux) must be installed and configured
  • Inside WSL2, you need:
    • BorgBackup installed (sudo apt install borgbackup or similar)
    • Python 3.13+ installed
    • Rclone installed (optional, for cloud sync features)
  • BorgBackup does not have a native Windows executable, so WSL2 is required for all backup operations