How to deploy BaseBuddy with Dokploy
Deploy the public BaseBuddy app repo on Dokploy with app-data storage, build commands, port, domain, and setup checks.
Use this guide to deploy the public BaseBuddy app repository on Dokploy from GitHub.
BaseBuddy needs persistent app data. The default backend is basebuddy-data/basebuddy.config.json; Supabase/Postgres app-data mode stores the same state in BaseBuddy-owned basebuddy tables. Content connection settings stay in env.
Before you start
You need:
- a Dokploy app connected to
https://github.com/version127/basebuddyor your fork; - env values for
BASEBUDDY_AUTH_SECRETandBASEBUDDY_CONTENT_DATABASE_URL; - optional Supabase Storage env values if mapped media or file fields use Supabase buckets;
- a persistent volume for
basebuddy-data/that survives redeploys, unless you choose Supabase/Postgres app data.
Build and run
Use the repo scripts:
shpnpm install --frozen-lockfile
pnpm build
pnpm startBaseBuddy starts on port 8080.
Persist app data
With the default backend, configure Dokploy so basebuddy-data/ is stored on persistent storage. Do not rely on the build layer if it is recreated on each deploy.
For Supabase/Postgres app data, set BASEBUDDY_APP_STATE_BACKEND instead. Split-project mode also needs BASEBUDDY_APP_STATE_DATABASE_URL.
Do not commit live app data to Git.
Create setup
After the first deploy, open:
texthttps://cms.example.com/onboardingComplete owner setup. BaseBuddy writes the selected app-data backend automatically.
You can also run the same setup from a Dokploy shell:
shpnpm basebuddy setup \
--owner-email "owner@example.com" \
--owner-name "Owner" \
--owner-password "choose-a-strong-password"Verify
Run:
shpnpm basebuddy doctorThen sign in, create or open a project, save mapping, reload, and confirm the mapping persists.
Common issues
| Problem | What it usually means | What to do |
|---|---|---|
| Setup repeats after every deploy | App data is not persistent | Mount persistent storage or use Supabase/Postgres app data |
| Doctor cannot reach content database | Dokploy cannot reach the database host or the URL is wrong | Use a reachable connection string and check network rules |
| Users disappear | App data was replaced or not restored | Restore the private app-data backup |