Retour aux outils
Bases de donnéesDébutantOpen sourceAuto-hébergeablev0.5.1

PG Back Web

**Les sauvegardes PostgreSQL sans la douleur** : une web UI minimaliste pour programmer, superviser

MAJ 2026-06-14
PG Back Web
Site officiel Code source★ 2 587

PG Back Web est une interface web dédiée aux sauvegardes PostgreSQL. Le projet se positionne comme une alternative moderne à `pg_dump` + cron : au lieu de bricoler un script et de surveiller des logs en clair, vous avez une UI qui liste les bases, programme les dumps, et permet de restaurer en un cl

Description

PG Back Web est une interface web dédiée aux sauvegardes PostgreSQL. Le projet se positionne comme une alternative moderne à pg_dump + cron : au lieu de bricoler un script et de surveiller des logs en clair, vous avez une UI qui liste les bases, programme les dumps, et permet de restaurer en un clic.

  • ✅ Découverte automatique des bases : connectez votre Postgres, l'app détecte les bases
  • ✅ Planification flexible : cron-like, granularité à la minute
  • ✅ Sauvegardes locales et S3 : disque local, MinIO, AWS S3, Backblaze B2, etc.
  • ✅ Restauration en un clic : depuis l'UI, sélectionnez un dump, choisissez la base cible
  • ✅ Rétention configurable : combien de dumps garder, par base
  • ✅ Compression : gzip/zstd automatique
  • ✅ Notifications : email, Discord, Slack, Telegram (en cas d'échec)
  • ✅ API REST : tout est scriptable
  • ✅ Multi-instances : sauvegardez plusieurs serveurs Postgres depuis une seule UI
  • ✅ Authentification intégrée : multi-utilisateurs
  • ✅ Léger : binaire Go unique, faible empreinte mémoire

Public cible : les devs et petites équipes qui self-hostent du Postgres et qui veulent une solution de backup visible et self-hosted sans payer pganalyze / pgBackRest manager. Très bon choix si vous n'avez pas 10 instances : simple, rapide à mettre en place, et bien plus lisible qu'un cron obscur.

Installation

Docker Compose

# docker-compose.yml
version: '3.8'
services:
  pgbackweb:
    image: eduardolat/pgbackweb:latest
    container_name: pgbackweb
    restart: unless-stopped
    environment:
      PBW_ENCRYPTION_KEY: change-me-32-bytes-base64
      PBW_POSTGRES_HOST: postgres
      PBW_POSTGRES_PORT: 5432
      PBW_POSTGRES_USER: pgbackweb
      PBW_POSTGRES_PASSWORD: change-me
      PBW_POSTGRES_DB: pgbackweb
    depends_on:
      postgres:
        condition: service_healthy
    volumes:
      - pgbackweb-data:/app/data
      - pgbackweb-backups:/app/backups
    ports:
      - "8085:8085"
    labels:
      - "traefik.enable=true"
      - "traefik.http.routers.pgbackweb.rule=Host(`pgback.example.com`)"
      - "traefik.http.routers.pgbackweb.entrypoints=websecure"
      - "traefik.http.routers.pgbackweb.tls.certresolver=letsencrypt"

  postgres:
    image: postgres:16-alpine
    container_name: pgbackweb-db
    restart: unless-stopped
    environment:
      POSTGRES_USER: pgbackweb
      POSTGRES_PASSWORD: change-me
      POSTGRES_DB: pgbackweb
    volumes:
      - pgbackweb-pgdata:/var/lib/postgresql/data
    healthcheck:
      test: ["CMD-SHELL", "pg_isready -U pgbackweb"]
      interval: 10s
      timeout: 5s
      retries: 5

volumes:
  pgbackweb-data:
  pgbackweb-backups:
  pgbackweb-pgdata:

Bare-metal (Go)

git clone https://github.com/eduardolat/pgbackweb.git
cd pgbackweb
go build -o pgbackweb ./cmd/pgbackweb
./pgbackweb

Configuration

  1. Accéder à l'UI : http://IP:8085 (ou via votre reverse-proxy)
  2. Créer le compte admin : premier lancement, on vous demande un email + mot de passe
  3. Ajouter une instance Postgres à sauvegarder : menu "Servers" → "New" → host, port, user, password, base à découvrir
  4. Créer un plan de backup : choisissez la base, la fréquence (cron), la destination (local, S3), la rétention
  5. Tester un dump manuel : bouton "Run now" pour vérifier que tout fonctionne
  6. Restaurer : sélectionnez un dump dans la liste → "Restore" → choisissez la base cible

Alternatives

Open Source

  • [[app-portabase]] — Backup multi-bases (Postgres, MySQL, Mongo)
  • [[app-velld]] — Backup multi-bases avec planification
  • pgBackRest — Le standard bare-metal pour Postgres, sans UI web
  • wal-g — Alternative orientée cloud (S3, GCS)
  • Barman — Solution de backup enterprise par 2ndQuadrant

Comparaison PG Back Web vs autres

CritèrePG Back WebpgBackRestPortabaseVelld
Interface web✅❌ (CLI)✅✅
SGBD supportésPostgresPostgresMultiMulti
Installation5 min30 min5 min5 min
Granularité cron✅✅✅✅
Restauration UI✅Partielle✅✅
S3 / cloud✅✅✅✅
PoidsLégerNatifLégerLéger

Verdict : PG Back Web est le meilleur choix si vous ne gérez que du Postgres et que vous voulez une UI simple. Pour du multi-bases, Portabase ou Velld sont plus adaptés.

Propriétaires (ce que PG Back Web remplace)

  • pganalyze (SaaS, plan gratuit limité)
  • pgBackRest Manager (interface payante autour de pgBackRest)
  • Cloud SQL automated backups (si vous migrez vers du managé)

Sécurité

  • PBW_ENCRYPTION_KEY : clé de chiffrement des credentials stockés — ne jamais la perdre, et la garder hors du repo Git
  • Ne jamais exposer PG Back Web publiquement : c'est un outil d'admin, gardez-le derrière un VPN (cf. [[securisation-home-lab]]) ou derrière une auth SSO
  • HTTPS obligatoire : passez par [[app-traefik]] avec un certificat valide

Ressources