
DevOps Engineer Needed: Self-Host Supabase on Ubuntu VPS
- or -
Post a project like this24
€250(approx. $288)
- Posted:
- Proposals: 12
- Remote
- #4443907
- OPPORTUNITY
- Awarded
Expert in Video editing | Animation | CV Update | illustrations | Photoshop | CGI and AutoCAD expert | Web developer & designer | Expert in Data scrapping

⭐⭐⭐⭐⭐TOP Awarded freelancer | Real Estate Client Calling | SEO optimization | Graphic designer |Digital marketing | and design strategist | Social Media Marketing

Certified Web Developer & Conversion-Focused Designer | I Build Websites That Turn Visitors into Customers + Grow Your Brand Online

Full-Stack Web & Mobile App Developer With AI Integration & Automation Expertise
Certified E-commerce Solutions Expert: Magento, BigCommerce, Shopify, and WordPress
102241241172949111888588120955811290382012274852504159112821761107498307911027121241841255768
Description
Experience Level: Intermediate
Project Summary
I’m looking for an experienced DevOps / Backend Engineer to set up and configure a self-hosted Supabase instance on my Ubuntu VPS.
Docker is already installed, but it should be verified and properly configured.
The goal is a secure, production-ready Supabase stack running locally (Postgres, Auth, REST, Realtime, Storage, Kong Gateway, and optional Studio), behind an HTTPS reverse proxy with automatic backups and full documentation.
Scope of Work
Docker & Environment Setup
Verify existing Docker installation (version, permissions, network stability).
Create dedicated Docker network (supabase_net).
Prepare directory structure under /opt/supabase/.
Supabase Stack Installation
Deploy Supabase components using Docker Compose:
Postgres
GoTrue (Auth)
PostgREST (REST API)
Realtime
Storage API
Kong Gateway
(Optional) Supabase Studio
Configure .env and docker-compose.yml following best practices:
No public database ports.
All services communicate over internal Docker network.
Security & Networking
Set up Nginx reverse proxy for HTTPS with Let’s Encrypt certificates.
Configure UFW firewall (only ports 22, 80, 443 open).
Add security headers and enforce HTTPS redirects.
Keep all credentials and secrets outside version control.
Backups & Monitoring
Implement automated daily PostgreSQL backups (with 30-day retention).
Include a tested restore script.
Add basic monitoring and health checks (Docker health, HTTP status).
(Optional) S3-compatible offsite backup upload.
Testing & Validation
Verify user sign-up, login, and password reset via GoTrue (SMTP).
Confirm REST endpoints respond via HTTPS.
Validate Storage uploads/downloads.
Test Realtime subscriptions.
Run at least 3 negative RLS access tests.
Documentation
Provide a short runbook (README) including:
Install, deploy, and rollback steps.
Backup and restore instructions.
Secrets handling.
Service management commands.
Include .env.example with comments.
Deliverables
Fully running self-hosted Supabase stack on Ubuntu VPS.
docker-compose.yml, .env.example, and Nginx config files.
Verified TLS certificate (Let’s Encrypt) and working HTTPS.
Working Auth, REST, Storage, and Realtime endpoints.
Automated daily database backup + successful restore test.
Clean and concise documentation/runbook.
Technical Environment
Ubuntu 22.04 LTS
Docker & Docker Compose v2
Nginx with Let’s Encrypt
Domain & DNS already configured
SSH access available
Acceptance Criteria
HTTPS active, A-grade SSL config, forced redirect HTTP→HTTPS
PostgreSQL not publicly accessible
Auth, REST, Storage, and Realtime endpoints all operational
Backups run daily; restore script verified
Logs rotate properly, disk usage monitored
Only ports 22/80/443 open (UFW enabled)
Documentation and .env.example delivered
No hardcoded secrets in any file under version control
Timeline & Deliverables
Estimated workload: 1–2 working days setup, +1 day for testing and documentation.
Deliverables pushed via Git repository and deployed on my VPS.
Required Skills
Docker & Docker Compose (production environments)
Supabase or similar stacks (Postgres, GoTrue, Kong, Realtime)
Linux server administration (Ubuntu)
Nginx + Let’s Encrypt TLS setup
Bash scripting (for backup/restore)
PostgreSQL and basic SQL/RLS understanding
Additional Notes
Docker is already running but needs verification.
Domain and DNS are fully configured.
No Supabase cloud integration — this must be 100% self-hosted.
Open to small improvements if you can make the setup more robust or secure.
I’m looking for an experienced DevOps / Backend Engineer to set up and configure a self-hosted Supabase instance on my Ubuntu VPS.
Docker is already installed, but it should be verified and properly configured.
The goal is a secure, production-ready Supabase stack running locally (Postgres, Auth, REST, Realtime, Storage, Kong Gateway, and optional Studio), behind an HTTPS reverse proxy with automatic backups and full documentation.
Scope of Work
Docker & Environment Setup
Verify existing Docker installation (version, permissions, network stability).
Create dedicated Docker network (supabase_net).
Prepare directory structure under /opt/supabase/.
Supabase Stack Installation
Deploy Supabase components using Docker Compose:
Postgres
GoTrue (Auth)
PostgREST (REST API)
Realtime
Storage API
Kong Gateway
(Optional) Supabase Studio
Configure .env and docker-compose.yml following best practices:
No public database ports.
All services communicate over internal Docker network.
Security & Networking
Set up Nginx reverse proxy for HTTPS with Let’s Encrypt certificates.
Configure UFW firewall (only ports 22, 80, 443 open).
Add security headers and enforce HTTPS redirects.
Keep all credentials and secrets outside version control.
Backups & Monitoring
Implement automated daily PostgreSQL backups (with 30-day retention).
Include a tested restore script.
Add basic monitoring and health checks (Docker health, HTTP status).
(Optional) S3-compatible offsite backup upload.
Testing & Validation
Verify user sign-up, login, and password reset via GoTrue (SMTP).
Confirm REST endpoints respond via HTTPS.
Validate Storage uploads/downloads.
Test Realtime subscriptions.
Run at least 3 negative RLS access tests.
Documentation
Provide a short runbook (README) including:
Install, deploy, and rollback steps.
Backup and restore instructions.
Secrets handling.
Service management commands.
Include .env.example with comments.
Deliverables
Fully running self-hosted Supabase stack on Ubuntu VPS.
docker-compose.yml, .env.example, and Nginx config files.
Verified TLS certificate (Let’s Encrypt) and working HTTPS.
Working Auth, REST, Storage, and Realtime endpoints.
Automated daily database backup + successful restore test.
Clean and concise documentation/runbook.
Technical Environment
Ubuntu 22.04 LTS
Docker & Docker Compose v2
Nginx with Let’s Encrypt
Domain & DNS already configured
SSH access available
Acceptance Criteria
HTTPS active, A-grade SSL config, forced redirect HTTP→HTTPS
PostgreSQL not publicly accessible
Auth, REST, Storage, and Realtime endpoints all operational
Backups run daily; restore script verified
Logs rotate properly, disk usage monitored
Only ports 22/80/443 open (UFW enabled)
Documentation and .env.example delivered
No hardcoded secrets in any file under version control
Timeline & Deliverables
Estimated workload: 1–2 working days setup, +1 day for testing and documentation.
Deliverables pushed via Git repository and deployed on my VPS.
Required Skills
Docker & Docker Compose (production environments)
Supabase or similar stacks (Postgres, GoTrue, Kong, Realtime)
Linux server administration (Ubuntu)
Nginx + Let’s Encrypt TLS setup
Bash scripting (for backup/restore)
PostgreSQL and basic SQL/RLS understanding
Additional Notes
Docker is already running but needs verification.
Domain and DNS are fully configured.
No Supabase cloud integration — this must be 100% self-hosted.
Open to small improvements if you can make the setup more robust or secure.
Projects Completed
12
Freelancers worked with
8
Projects awarded
60%
Last project
5 Nov 2025
United Kingdom
New Proposal
Login to your account and send a proposal now to get this project.
Log inClarification Board Ask a Question
-
There are no clarification messages.
We collect cookies to enable the proper functioning and security of our website, and to enhance your experience. By clicking on 'Accept All Cookies', you consent to the use of these cookies. You can change your 'Cookies Settings' at any time. For more information, please read ourCookie Policy
Cookie Settings
Accept All Cookies