Installation
You have four ways to install Databasus: automated script (recommended), simple Docker run, Docker Compose setup or Helm for Kubernetes.
System requirements
Databasus requires the following minimum system resources to run properly:
- CPU: At least 1 CPU core
- RAM: Minimum 500 MB RAM
- Storage: 5 GB for installation and as much as you need for backups
- Docker: Docker Engine 20.10+ and Docker Compose v2.0+
Option 1: installation script (recommended, Linux only)
The installation script will:
- ✅ Install Docker with Docker Compose (if not already installed)
- ✅ Set up Databasus
- ✅ Configure automatic startup on system reboot
sudo apt-get install -y curl && \
sudo curl -sSL https://raw.githubusercontent.com/databasus/databasus/refs/heads/main/install-databasus.sh | sudo bashIn this case Databasus will be installed in /opt/databasus directory.
Option 2: Simple Docker run
The easiest way to run Databasus:
docker run -d \
--name databasus \
-p 4005:4005 \
-v ./databasus-data:/databasus-data \
--restart unless-stopped \
databasus/databasus:latestThis single command will:
- ✅ Start Databasus
- ✅ Store all data in
./databasus-datadirectory - ✅ Automatically restart on system reboot
Option 3: Docker Compose setup
Create a docker-compose.yml file with the following configuration:
services:
databasus:
container_name: databasus
image: databasus/databasus:latest
ports:
- "4005:4005"
volumes:
- ./databasus-data:/databasus-data
restart: unless-stoppedThen run:
docker compose up -dKeep in mind that start up can take up to ~2 minutes.
Option 4: Kubernetes with Helm
For Kubernetes deployments, install directly from the OCI registry. Choose your preferred access method based on your environment.
With ClusterIP + port-forward (development)
helm install databasus oci://ghcr.io/databasus/charts/databasus \
-n databasus --create-namespaceAccess via port-forward:
kubectl port-forward svc/databasus-service 4005:4005 -n databasus
# Access at http://localhost:4005With LoadBalancer (cloud environments)
helm install databasus oci://ghcr.io/databasus/charts/databasus \
-n databasus --create-namespace \
--set service.type=LoadBalancerGet the external IP and access Databasus:
kubectl get svc databasus-service -n databasus
# Access at http://<EXTERNAL-IP>:4005With Ingress (domain-based access)
helm install databasus oci://ghcr.io/databasus/charts/databasus \
-n databasus --create-namespace \
--set ingress.enabled=true \
--set ingress.hosts[0].host=backup.example.comFor more options (NodePort, TLS, HTTPRoute for Gateway API), see the Helm chart documentation.
Getting started
After installation:
- Launch and access Databasus: Start Databasus and navigate to
http://localhost:4005 - Create your first backup job: Click "New Backup" and configure your PostgreSQL database connection
- Configure schedule: Set up your backup schedule (hourly, daily, weekly, monthly or cron)
- Choose storage destination: Select where to store your backups (local, S3, Google Drive, etc.)
- Set up notifications: Add notification channels (Slack, Telegram, Discord) to get alerts about backup status
- Start backing up: Save your configuration and watch your first backup run!
How to update Databasus?
Update Docker installation
To update Databasus running via Docker, you need to stop it, clean up Docker cache and restart the container.
- Go to the directory where Databasus is installed (usually
/opt/databasus) - Stop the container:
docker compose stop - Clean up Docker cache:
docker system prune -a - Restart the container:
docker compose up -d
It will get the latest version of Databasus from the Docker Hub (if you have not fixed the version in the docker-compose.yml file).
Update Helm installation
To update Databasus running on Kubernetes via Helm, use the upgrade command:
helm upgrade databasus oci://ghcr.io/databasus/charts/databasus -n databasusIf you have custom values, add -f values.yaml or use --set flags to preserve your configuration. Helm will perform a rolling update to the new version.
Migrating from Postgresus
Databasus is the new name for Postgresus. If you're currently using Postgresus, you can continue using it or migrate to Databasus.
Important: Simply renaming the Docker image isn't enough, as Postgresus and Databasus use different data folders and internal database naming.
To migrate:
- Stop your Postgresus container:
docker compose stop - Install Databasus using any of the methods above (use a different volume path
./databasus-data) - Manually recreate your databases, storages and notifiers in Databasus
You can run both Postgresus and Databasus side by side during migration by using different ports and volume paths.
Troubleshooting
Container won't start
If the container fails to start, check the logs:
docker logs databasusPort already in use
If port 4005 is already in use, you can change it in your docker-compose.yml:
ports:
- "8080:4005" # Change 8080 to any available portPermission denied errors
If you encounter permission issues with the data directory:
sudo chown -R $USER:$USER ./databasus-data
chmod -R 755 ./databasus-data