← 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
- 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.
- 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.
- 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.