Portabase Logo

Dokploy

Deploy Portabase on Dokploy in one click and automate backups of the PostgreSQL, MySQL, MariaDB, MongoDB and Redis databases your Dokploy instance manages.

Dokploy is an open-source, self-hosted PaaS built on Docker and Traefik - a Vercel/Netlify/Heroku alternative for your own servers. Portabase is published in its template catalogue, so the Dashboard and its PostgreSQL database deploy together in a few clicks, with no docker-compose.yml to write.

Useful links: Dokploy website · Dokploy documentation · Dokploy on GitHub

You need a working Dokploy instance, and a domain pointing at it if you want HTTPS. See the requirements for the rest.


Installation

Create the service

Open the project you want to deploy into, click Create Service and choose Template.

Pick Portabase from the catalogue

Search for Portabase in the template list and create it.

Dokploy provisions the Portabase container together with its PostgreSQL database, and pre-fills the generated values (database credentials, PROJECT_SECRET).

Set the domain

In the service's Domains tab, add the public host of the Portabase container, for example portabase.example.com, targeting port 80. Enable HTTPS so Dokploy issues the certificate through Traefik - our own reverse proxy guide is not needed here.

Make sure the PROJECT_URL environment variable matches that exact public URL, scheme included. Agents use it to reach the Dashboard.

Review the secret

PROJECT_SECRET encrypts everything the agents exchange with the Dashboard, and the credentials stored in it. Keep it backed up, and never change it once agents are connected - previously encrypted data would no longer be readable.

If it wasn't generated for you, set it to a strong random value:

openssl rand -hex 32

The full list of what you can tune is on the environment variables page.

Deploy

Click Deploy and wait for the container to become healthy, then open your domain and follow getting started.


Backing up Dokploy-managed databases

Dokploy runs each database as a Docker container on its own Docker network. For the Portabase Agent to reach them, connect the agent container to that network as well:

# List the networks Dokploy created, then attach the agent to the right one
docker network ls
docker network connect <dokploy-network> portabase-agent

Then declare the database in the Dashboard using the container name as the host, and its normal port. Databases running on the host rather than in a container are reachable through the extra_hosts mapping already present in the agent compose file.

Per-engine settings - required grants, dump options, restore behaviour - are documented in the databases section.


Troubleshooting

  • The agent shows as offline. Check that PROJECT_URL is the public HTTPS URL of the Dashboard, not an internal container name, then review the agent configuration.
  • The agent cannot reach a database. It is almost always a Docker network issue - see the section above.
  • You changed PROJECT_SECRET. Existing encrypted data cannot be recovered. Restore the previous value.

More answers in the FAQ.


Last updated on

On this page