logo
icon

Supabase Self-Hosted

Alternatif open source untuk Firebase. Kami membangun fitur-fitur Firebase menggunakan alat open source tingkat enterprise.

template cover
Dideploy68 kali
Penerbitterry90918
Dibuat2025-11-13
Layanan
service icon
service icon
service icon
service icon
service icon
service icon
service icon
service icon
service icon
service icon
service icon
service icon
Tag
databasebackendsupabasepostgresqlauthstoragerealtime

Supabase Self-hosted untuk Zeabur

Ini adalah demo Supabase self-hosted untuk Zeabur. Anda dapat menggunakan template ini untuk mendeploy instance Supabase di Zeabur.

Layanan

Instansi Supabase ini mencakup Kong (API Gateway), Studio (Supabase Studio), PostgreSQL (Database), Meta (Postgres Meta), REST (PostgREST), Auth (GoTrue), Supavisor (Connection Pooler), Realtime (Langganan Perubahan Database), Storage (API Penyimpanan), MinIO (Penyimpanan Objek), ImgProxy (Pemrosesan Gambar), dan Functions (Edge Functions).

Untuk informasi arsitektur yang detail, kunjungi dokumentasi arsitektur resmi Supabase.

Layanan yang tidak disertakan karena keterbatasan platform:

  • Vector (Agregasi Log): Memerlukan izin Kubernetes RBAC ClusterRole untuk mengumpulkan log pod, yang tidak disediakan oleh Zeabur karena alasan keamanan.
  • Analytics (Logflare): Bergantung pada Vector untuk pengumpulan log. Tanpa Vector, Analytics tidak memiliki sumber data dan oleh karena itu tidak disertakan.

Catatan: Tanpa Analytics, fitur Logs di Supabase Studio tidak akan tersedia. Semua fitur Studio lainnya (Database, Auth, manajemen Storage, dll.) akan bekerja normal.

Jika Anda memerlukan layanan Supabase tambahan, silakan implementasikan sesuai dengan file docker-compose.yaml upstream dan kirimkan perubahan Anda ke server Discord kami. Ini berlaku untuk Program Hadiah Kontribusi kami.

Memulai

Mengakses Dashboard

Setelah deployment, dashboard Supabase Studio Anda akan tersedia di domain yang telah dikonfigurasi.

Menemukan Kredensial Anda:

  1. Buka layanan Kong di proyek Zeabur Anda
  2. Klik tab Instructions (Instruksi)
  3. Anda akan menemukan:
    • Supabase Username: Nama pengguna dashboard Anda (dari variabel DASHBOARD_USERNAME)
    • Supabase Password: Password aman yang dihasilkan otomatis

Kunci Keamanan Penting

Kunci-kunci berikut tersedia di variabel lingkungan layanan Kong:

KunciLokasiDeskripsi
JWT_SECRETLayanan KongSecret untuk menandatangani token JWT
ANON_KEYLayanan KongKunci API publik untuk akses anonim
SERVICE_ROLE_KEYLayanan KongKunci API admin dengan akses penuh

⚠️ PENTING: Kunci default hanya untuk tujuan demo. Anda HARUS menghasilkan kunci baru sebelum penggunaan produksi.

Cara Menghasilkan Kunci yang Aman:

  1. Kunjungi Generator JWT Supabase
  2. Hasilkan kunci baru menggunakan JWT_SECRET kustom Anda:
    • Hasilkan kunci anon → gunakan sebagai ANON_KEY
    • Hasilkan kunci service_role (ditampilkan sebagai SERVICE_KEY di situs web) → gunakan sebagai SERVICE_ROLE_KEY
  3. Perbarui variabel lingkungan di layanan Kong
  4. Restart semua layanan untuk menerapkan perubahan:
    • Buka Proyek Anda → PengaturanUmum
    • Gulir ke bawah ke Tindakan Batch
    • Klik Restart Semua untuk me-restart semua layanan

Mengamankan Layanan Anda

Meskipun kami menyediakan beberapa secret contoh untuk memulai, Anda TIDAK BOLEH mendeploy setup Supabase Anda menggunakan default yang kami sediakan. Ikuti semua langkah di bagian ini untuk memastikan Anda memiliki setup yang aman, lalu restart semua layanan untuk menerapkan perubahan.

Panduan Resmi

Konfigurasi

Menambahkan dukungan Google OAuth

Tambahkan variabel lingkungan ke layanan auth: GOTRUE_EXTERNAL_GOOGLE_ENABLED=true, GOTRUE_EXTERNAL_GOOGLE_CLIENT_ID, GOTRUE_EXTERNAL_GOOGLE_SECRET, GOTRUE_EXTERNAL_GOOGLE_REDIRECT_URI.

Menambahkan dukungan Apple OAuth

Tambahkan variabel lingkungan ke layanan auth: GOTRUE_EXTERNAL_APPLE_ENABLED=true, GOTRUE_EXTERNAL_APPLE_CLIENT_ID, GOTRUE_EXTERNAL_APPLE_SECRET, GOTRUE_EXTERNAL_APPLE_REDIRECT_URI.

Mengonfigurasi layanan email SMTP (Integrasi Resend)

Untuk mengaktifkan fungsi email, konfigurasikan SMTP menggunakan Resend. Tambahkan ke layanan auth: GOTRUE_SMTP_HOST=smtp.resend.com, GOTRUE_SMTP_PORT=587, GOTRUE_SMTP_PASS (kunci API Resend Anda), GOTRUE_SMTP_ADMIN_EMAIL, GOTRUE_SMTP_SENDER_NAME, GOTRUE_SITE_URL.

Konfigurasi Auth lanjutan (Opsional)

Mendukung hook token akses kustom, hook verifikasi MFA, hook verifikasi password, hook SMS/Email kustom. Tambahkan variabel lingkungan GOTRUE_HOOK_* yang sesuai ke layanan auth.

Asisten SQL Studio: Tambahkan OPENAI_API_KEY ke layanan studio.