Self-host checklist

Self-host Supabase on a VPS without losing your data

Supabase self-hosting gives you full data control and predictable cost. But you own the server, the database, the backups, and the recovery plan.

What is probably broken

Managed Supabase is convenient but you want data ownership, predictable cost, or to run everything on one VPS.

What production should look like

A self-hosted Supabase instance with persistent volumes, automated backups, and a tested restore path.

STEP 01

Plan the self-host setup

Self-hosting is a commitment. Make sure you are ready before starting.

  • Choose a VPS with enough RAM and disk for Postgres and Supabase services.
  • Plan your backup strategy before creating any data.
  • Decide whether you need all Supabase services or just Postgres and auth.

STEP 02

Deploy with Docker Compose

Supabase self-hosts as a Docker Compose stack with multiple services.

  • Use the official Supabase self-host Docker Compose file.
  • Configure named volumes for Postgres and storage data.
  • Set secrets in the server environment, not in the compose file.

STEP 03

Back up, test restore, and connect apps

A backup you have not tested is not a backup.

  • Set up automated Postgres backups to a separate location.
  • Run a restore test before treating the server as production.
  • Point your app DATABASE_URL and Supabase env vars at the self-hosted instance.

Quick check

Is your app production-ready?

If you cannot tick all five, we can fix it. Send us the repo and we handle the rest.

  • ?Custom domain with HTTPS
  • ?Environment variables configured
  • ?Database wired and backed up
  • ?Auto-deploy on push
  • ?Smoke tested and live

Free checklist

Deploying this yourself?

Get the exact 5-step checklist we run before every deploy. No fluff, just the things that actually break.

No spam. Your email is only used to send the checklist.

Done-for-you deploy

RepoAssistant sets up self-hosted Supabase with backups, restore testing, and app connectivity checked.

Fixed price per repo. 24h delivery or full refund. No hourly billing.

Deploy my app

Related guides