--- title: Dokku description: Deploy ParadeDB on Dokku from the official Docker image canonical: https://www.paradedb.com/docs/deploy/cloud-platforms/dokku --- Cloud platform deployments run ParadeDB Community, which do not support high availability or read replicas. If these matter to you, we recommend [ParadeDB Enterprise](/deploy/enterprise) deployed via [Kubernetes](/deploy/self-hosted/kubernetes) or [BYOC](/deploy/byoc). [Dokku](https://dokku.com) 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. ## Prerequisites 1. A Dokku host with the [`dokku` CLI installed](https://dokku.com/docs/getting-started/installation/) (this guide assumes Dokku 0.34 or newer) 2. SSH access to the host as a user that can invoke `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@ ` from your local machine. ## Create the App ```bash dokku apps:create paradedb ``` ## Attach Persistent Storage ParadeDB stores its data under `/var/lib/postgresql`. Create a host directory and mount it into the app so the database survives container rebuilds: ```bash dokku storage:ensure-directory paradedb dokku storage:mount paradedb /var/lib/dokku/data/storage/paradedb:/var/lib/postgresql ``` ## Set the Postgres Password Set the database password as a Dokku config var so it never lives in a Docker image or a `git` history: ```bash dokku config:set paradedb \ POSTGRES_PASSWORD= \ POSTGRES_USER=postgres \ POSTGRES_DB=paradedb ``` ## Expose Port 5432 Postgres speaks TCP on port 5432. Tell Dokku to forward that port through its proxy layer: ```bash dokku ports:add paradedb tcp:5432:5432 ``` ## Deploy from Docker Hub Point Dokku at the official ParadeDB image and rebuild the app: ```bash dokku git:from-image paradedb paradedb/paradedb:latest ``` See the [Docker Hub page](https://hub.docker.com/r/paradedb/paradedb/tags) for available tags. Pin a tag (for example `paradedb/paradedb:0.25.4-pg18`) instead of `latest` for reproducible deploys. ## Connect to ParadeDB From any machine that can reach your Dokku host on port 5432: ```bash psql "postgres://postgres:@:5432/paradedb" ``` Replace `` with your Dokku host's IP or hostname. By default the port is exposed on every interface. If the host is on the public internet, restrict inbound traffic to trusted IPs with your firewall (e.g. `ufw allow from to any port 5432 proto tcp`) and make sure `POSTGRES_PASSWORD` is strong.