docs/deploy/cloud-platforms/dokku.mdx
Dokku is a self-hosted PaaS built on Docker. This guide walks through deploying ParadeDB on a Dokku host using the official paradedb/paradedb Docker image, with a persistent storage mount for the database and a TCP proxy on port 5432.
dokku CLI installed (this guide assumes Dokku 0.34 or newer)dokku (typically root via sudo, or a user in the dokku group)Run all dokku ... commands from the host, either directly on the host over SSH or via ssh dokku@<HOST> <command> from your local machine.
dokku apps:create paradedb
ParadeDB stores its data under /var/lib/postgresql. Create a host directory and mount it into the app so the database survives container rebuilds:
dokku storage:ensure-directory paradedb
dokku storage:mount paradedb /var/lib/dokku/data/storage/paradedb:/var/lib/postgresql
Set the database password as a Dokku config var so it never lives in a Docker image or a git history:
dokku config:set paradedb \
POSTGRES_PASSWORD=<YOUR_STRONG_PASSWORD> \
POSTGRES_USER=postgres \
POSTGRES_DB=paradedb
Postgres speaks TCP on port 5432. Tell Dokku to forward that port through its proxy layer:
dokku ports:add paradedb tcp:5432:5432
Point Dokku at the official ParadeDB image and rebuild the app:
dokku git:from-image paradedb paradedb/paradedb:latest
See the Docker Hub page for available tags. Pin a tag (for example paradedb/paradedb:0.25.4-pg18) instead of latest for reproducible deploys.
From any machine that can reach your Dokku host on port 5432:
psql "postgres://postgres:<YOUR_STRONG_PASSWORD>@<DOKKU_HOST>:5432/paradedb"
Replace <DOKKU_HOST> with your Dokku host's IP or hostname.