unsubbed.co

PG Back Web

Released under AGPL-3.0, PG Back Web provides effortless PostgreSQL backups with an user-friendly web interface on self-hosted infrastructure.

Overview

🐘 Effortless PostgreSQL backups with a user-friendly web interface! 🌐💾 PG Back Web

🐘 Effortless PostgreSQL backups with a user-friendly web interface! 🌐💾 The project has 3K+ GitHub stars and is licensed under AGPL-3.0.

Key Features

Source: GitHub README

  • 📦 Intuitive web interface: Manage your backups with ease, no database expertise required.
  • 📅 Scheduled backups: Set it and forget it. PG Back Web takes care of the rest.
  • 📈 Backup monitoring: Visualize the status of your backups with execution logs.
  • 📤 Instant download & restore: Restore and download your backups when you need them, directly from the web interface.
  • 🖥 Multi-version support: Compatible with PostgreSQL 13, 14, 15, 16, 17, and 18.
  • 📁 Local & S3 storage: Store backups locally or add as many S3 buckets as you want for greater flexibility.
  • ❤️‍🩹 Health checks: Automatically check the health of your databases and destinations.
  • 🔔 Webhooks: Get notified when a backup finishes, failed, health check fails, or other events.
  • 🔒 Security first: PGP encryption to protect your sensitive information.
  • 🛡️ Open-source trust: Open-source code under AGPL v3 license, backed by the robust pg_dump tool.

Getting Started

Source: GitHub README

services:
  pgbackweb:
    image: eduardolat/pgbackweb:latest
    ports:
      - "8085:8085" # Access the web interface at http://localhost:8085
    volumes:
      - ./backups:/backups # If you only use S3 destinations, you don't need this volume
    environment:
      # Optional environment variables are ignored, see the configuration section below for more details
      PBW_ENCRYPTION_KEY: "my_secret_key" # Change this to a strong key
      PBW_POSTGRES_CONN_STRING: "postgresql://postgres:password@postgres:5432/pgbackweb?sslmode=disable"
    depends_on:
      postgres:
        condition: service_healthy

  postgres:
    image: postgres:18
    environment:
      POSTGRES_USER: postgres
      POSTGRES_DB: pgbackweb
      POSTGRES_PASSWORD: password
    ports:
      - "5432:5432"
    volumes:
      - ./data:/var/lib/postgresql/data
    healthcheck:
      test: ["CMD-SHELL", "pg_isready -U postgres"]
      interval: 5s
      timeout: 5s
      retries: 5

Normalized Features

Source: tool-features-normalized.json

backup restore, charts, dark mode, docker, docker compose, encryption, postgresql, webhooks.

Features

Integrations & APIs

  • Webhooks

Data & Storage

  • Backup & Restore

Customization & Branding

  • Dark Mode

Analytics & Reporting

  • Charts & Graphs

Security & Privacy

  • Encryption