← All guides

Self-host checklist

Self-host Supabase on a VPS without losing your data

SupabaseVPS

Short answer

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

Why this matters

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

Walkthrough

  1. 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.
  2. 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.
  3. 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.

Where RepoAssistant fits

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