PostgreSQL backup tool

Postgresus is a free, open source and self-hosted tool to backup PostgreSQL. Make backups with different storages and notifications about progress

Check mark icon

Configurable health checks with notifications

Check mark icon

Scheduled backups (daily, weekly, at 4 AM, etc.)

Check mark icon

Save backups locally, in S3, Google Drive and more

Check mark icon

Notifications to Slack, Telegram, Discord, etc.

Check mark icon

Run via .sh script, Docker or Docker Compose

Supported messengers and platforms
Postgresus dashboard interface

I am backuping a lot of databases for my projects. Before I used manual written scripts with pg_dump and it was a pain: I have to manage them, maintain, care about whether they are really working.

So I decided to create Postgresus: to make scheduled backups of tens of DBs via simple UI and receive notifications when backups are done or failed. Moreover, it was important to me to make Postgresus easy deployable within 2 minutes.

Now I really happy to say that I use it it production and it works great! Also, now I can share access to backups with my team that may be useful for DevOps and DBAs teams as well.

By the way, the project is written in Go. If you like what I've created — please star it on GitHub ⭐. It's really will help me.

Rostislav Dugin
Rostislav Dugin

Developer of Postgresus

How to use Postgresus (overview)?

How to use Postgresus (overview)?

Watch in this short 4 minutes video how to use Postgresus: how connect datase, how to configure backups schedule, how to download and restore backups, how to add team members and what is users' audit logs

How to make backups?

To make PostgreSQL backup with Postgresus you need to follow 4 steps. After that, you will be able to restore in one click

1

Select required schedule

You can choose any time you need: daily, weekly, monthly and particular time (like 4 AM)

For week interval you need to specify particular day, for month you need to specify particular day

If your database is large, we recommend you choosing the time when there are decrease in traffic

Backup schedule configuration interface
2

Enter your database info

Enter credentials of your PostgreSQL database, select version and target DB. Also choose whether SSL is required

Postgresus, by default, compress backups at balance level to not slow down backup process (~20% slower) and save x4-x8 of the space (that decreasing network traffic)

Database configuration form
3

Choose storage for backups

You can keep files with backups locally, in S3, in Google Drive, NAS, Dropbox and other services

Please keep in mind that you need to have enough space on the storage

Storage options selection interface
4

Choose where you want to receive notifications (optional)

When backup succeed or failed, Postgresus is able to send you notification. It can be chat with DevOps, your emails or even webhook of your team

We are going to support the most of popular messangers and platforms

Notification settings configuration

Features

Postgresus provides everything you need for reliable PostgreSQL backup management. From automated scheduling to multiple storage options, we've got you covered.

Scheduled backups

Scheduled backups
Backup is a thing that should be done in specified time on regular basis. So we provide many options: from hourly to monthly

Notifications

Notifications
You can receive notifications about success or fail of the process. This is useful for developers or DevOps teams. View all →

Many destinations to store

Many destinations to store
Files are kept on VPS, cloud storages and other places. You can choose any storage you. Files are always owned by you. View all →

Self hosted via Docker

Self hosted via Docker
Postgresus runs on your PC or VPS. Therefore, all your data is owned by you and secured. Deploy takes about 2 minutes

Configurable health checks

Configurable health checks
Each minute (or any another amount of time) the system will ping your database and show you the history of attempts

The database can be considered as down after 3 failed attempts or so. Once DB is healthy again - you receive notification too

Open source and free

Open source and free
The project is fully open source, free and have Apache 2.0 license. You can copy and fork the code on your own

Many PostgreSQL versions

Many PostgreSQL versions
PostgreSQL 13, 14, 15, 16, 17 and 18 are supported by the project. You can backup any version from 2020

Access management

for teams
Access management
Provide access for users to view or manage DBs. Suitable for DevOps teams and developers. Read more →

Audit logs

for teams
Audit logs
Track all system activities with comprehensive audit logs. You can view access and changes history for each user. Read more →

Encryption

Backup encryption
Enterprise-grade encryption protects your backups. Store encrypted files safely in shared cloud storage without security concerns

How to install?

You have three ways to install Postgresus: automated script (recommended), simple Docker run or Docker Compose setup.

The installation script will install Docker with Docker Compose (if not already installed), set up Postgresus, and configure automatic startup on system reboot.
sudo apt-get install -y curl && \
sudo curl -sSL https://raw.githubusercontent.com/RostislavDugin/postgresus/refs/heads/main/install-postgresus.sh | sudo bash

Also you can watch the video with guide how to install Postgresus on VPS (all 3 ways)

How to install Postgresus on VPS

FAQ

The goal of Postgresus — make backing up as simple as possible for single developers (as well as DevOps) and teams. UI makes it easy to create backups and visualizes the progress and restores anything in couple of clicks

1. What is Postgresus and why should I use it instead of hand-rolled scripts?

Postgresus is an Apache 2.0 licensed, self-hosted service backing up PostgreSQL, v13 to v18. It differs from shell scripts in that it has a frontend for scheduling tasks, compressing and storing archives on multiple targets (local disk, S3, Google Drive, NAS, Dropbox, etc.) and notifying your team when tasks finish or fail — all without hand-rolled code

2. How do I install Postgresus in the quickest manner?

The most direct route is to run the one-line cURL installer. It fetches the current Docker image, spins up a single PostgreSQL container. Then creates a docker-compose.yml and boots up the service so it will automatically start again when reboots occur. Overall time is usually less than two minutes on a typical VPS.

3. What backup schedules can I schedule?

You can choose from hourly, daily, weekly or monthly cycles and even choose an exact run time (such as 04:00 when it's late night). Weekly schedules enable you to choose a particular weekday, while monthly schedules enable you to choose a particular calendar day, giving you very fine-grained control of maintenance windows.

4. Where do my backups live and how much space will they occupy?

Archives can be saved to local volumes, S3-compatible buckets, Google Drive, Dropbox and other cloud targets. Postgresus implements balanced compression, which typically shrinks dump size by 4-8x with incremental only about 20% of runtime overhead, so you have storage and bandwidth savings.

5. How will I know a backup succeeded — or worse, failed?

Postgresus can notify with real-time emails, Slack, Telegram, webhooks, Mattermost, Discord and more. You have the choice of what channels to ping so that your DevOps team hears about successes and failures in real time, making recovery routines and compliance audits easier.

6. Does Postgresus reduce database security?

No. All the data executes within containers you control, on servers you own. Credentials and backup files are left on your server or in the cloud account of your choice. Additionally, Postgresus offers enterprise-grade AES-256-GCM encryption for your backup files. This means even if someone gains access to your storage, encrypted backups remain useless without the decryption key. Because it's open source, you or your security team can inspect every line to make sure it meets your organization's needs before it's run.

7. How do I set up and run my first backup job in Postgresus?

To start your very first Postgresus backup, simply log in to the dashboard, click on New Backup, select an interval — hourly, daily, weekly or monthly. Then specify the exact run time (e.g., 02:30 for off-peak hours). Then input your PostgreSQL host, port number, database name, credentials, version and SSL preference. Choose where the archive should be sent (local path, S3 bucket, Google Drive folder, Dropbox, etc.). If you need, add notification channels such as email, Slack, Telegram or a webhook and click Save. Postgresus instantly validates the info, starts the schedule, runs the initial job and sends live status. So you may restore with one touch when the backup is complete.

8. How does PostgreSQL monitoring work?

Postgresus monitors your databases instantly. This optional feature helps avoid extra costs for edge DBs. Health checks are performed once a specific period (minute, 5 minutes, etc.). To enable the feature, choose your DB and select "enable" monitoring. Then configure health checks period and number of failed attempts to consider the DB as unavailable.

9. Who is Postgresus suitable for?

Postgresus is designed for single developers, DevOps teams, organizations, startups, system administrators and IT departments who need reliable PostgreSQL backups. Whether you're managing personal projects or production databases, Postgresus provides enterprise-grade backup capabilities with a simple, intuitive interface.

10. How is Postgresus different from PgBackRest, Barman or pg_dump?

Postgresus provides a modern, user-friendly web interface instead of complex configuration files and command-line tools. While PgBackRest and Barman require extensive configuration and command-line expertise, Postgresus offers intuitive point-and-click setup. Unlike raw pg_dump scripts, it includes built-in scheduling, compression, multiple storage destinations, health monitoring and real-time notifications — all managed through a simple web UI.

11. Can I use Postgresus as an individual and as a team?

Yes, Postgresus works perfectly for both individual developers and teams. For individuals, you can manage all your databases with a simple, secure interface. For teams, Postgresus offers access management features that let you create multiple users with different permission levels (viewer, editor, admin). You can control who can view or manage specific databases, making it ideal for DevOps teams and development organizations. Additionally, audit logs track all system activities, showing who accessed what and when, which is essential for security compliance and team accountability.