Supabase 自架替代方案完整指南 (2026)

若您在尋找 Supabase 的自架替代方案,主要有五大主流選擇:AppwriteNhostPocketBaseDirectus,以及 Supabase 官方自架版本本身。選擇取決於您的團隊規模、技術棧偏好、資料庫需求與維運能力。


主要替代方案比較表

平台 核心資料庫 API 風格 自架難度 最適合場景 授權模式
Appwrite MariaDB (文件型) REST 中等 (Docker) 完整 BaaS 需求、跨平台行動開發、想要完全資料主權 MIT (開源)
Nhost PostgreSQL GraphQL (Hasura) 中等 (Docker Compose) GraphQL-first 團隊、JAMstack 專案、熟悉 Hasura MIT (開源)
PocketBase SQLite REST + SSE 即時 極低 (單一二進制檔) 個人/小型專案、MVP、原型、輕量級應用 MIT (開源)
Directus 任意 SQL (Postgres/MySQL/等) REST + GraphQL 中等 (Docker) 既有資料庫、內容管理、內部工具、無頭 CMS BSL 1.1
Supabase (官方自架) PostgreSQL REST + GraphQL + 即時 中高 (Docker Compose 多服務) 需要完整 Supabase 功能、Postgres 生態、Edge Functions MIT (核心)/Apache 2.0

深度分析各方案

1. Appwrite — 功能最完整的開源 BaaS 替代品

uibakery

優點:

  • 完整的 BaaS 功能:認證、資料庫、儲存、Functions、Messaging (Email/SMS/Push)、靜態網站託管
  • 官方支援 Docker 一鍵部署,並有 DigitalOcean、AWS、Azure、GCP Marketplace 映像
  • 多平台 SDK:Web、Flutter、iOS (Swift)、Android (Kotlin)、Node.js、Python、PHP、.NET、Deno
  • 現代化管理後台 UI,體驗接近 Supabase
  • 自架版無任何使用限制 (Managed 版才有專案暫停、頻寬配額等限制)

缺點:

  • 底層用 MariaDB (文件模型),非 PostgreSQL,查詢語法與關聯處理不同
  • 社群規模較 Supabase 小,第三方整合較少
  • 生產環境建議 2 vCPU + 4GB RAM 起跳 reddit

部署建議:

  • 入門:官方 Marketplace 一鍵部署 (DigitalOcean Droplet 約 $12/月起)
  • 進階:Coolify、Portainer、Kubernetes Helm Chart
  • 生產必做:SSL、SMTP、S3 相容儲存、備份策略、速率限制、監控 appwrite

2. Nhost — GraphQL 優先、PostgreSQL + Hasura 架構

jem-products

優點:

  • 原生 GraphQL (Hasura 引擎),自動從 Postgres Schema 產生 API、關聯、權限
  • 內建 Auth、Storage、Serverless Functions、即時訂閱 (GraphQL Subscriptions)
  • CLI 優先、Git-based 部署、內建遷移與 CI/CD 工具
  • 完全開源,可自架於任意 Docker Compose 環境

缺點:

  • 自架體驗有爭議:多位開發者回報 CORS、內部變數、驗證域名限制導致非 localhost 環境難以正常運作 dev
  • 團隊較小 (2025 年約 7 人),社群與生態系遠不如 Supabase
  • 若不習慣 GraphQL,學習曲線較陡

部署方式:

  • 官方提供 docker-compose.yml 範例,含 Postgres、Hasura、Auth、Storage、Functions、PostgreSQL 遷移工具
  • 建議先在本地驗證再投入生產

3. PocketBase — 極致輕量、單一執行檔、零依賴

dev

優點:

  • 單一 Go 執行檔 (~20MB),下載即執行,無 Docker、無資料庫安裝 (內建 SQLite)
  • 內建 Admin UI、Auth (Email/OAuth)、檔案儲存、即時訂閱 (SSE)、擴充 Hooks (Go/JS)
  • 極低資源需求:$5-20/月 VPS 即可跑中小型專案
  • 可嵌入瀏覽器 (WASM)、行動裝置、IoT 設備
  • 完全免費開源 (MIT),無雲端鎖定

缺點:

  • SQLite 寫入併發瓶頸,不適合高並發、多伺服器水平擴展
  • 無內建 Serverless Functions (需透過 Go Hooks 或外部服務)
  • 生態系、第三方整合最少
  • 團隊擴大時通常需遷移至 PostgreSQL 方案

部署極簡範例:

# 1. 下載最新版
curl -L -o pb.zip https://github.com/pocketbase/pocketbase/releases/latest/download/pocketbase_linux_amd64.zip
unzip pb.zip -d pb && chmod +x pb/pocketbase

# 2. 直接跑 (自動申請 Let's Encrypt 憑證)
./pb/pocketbase serve yourdomain.com

# 3. 生產建議加 systemd 服務 + Nginx/Caddy 反向代理

官方文件提供完整生產部署指南 pocketbase


4. Directus — 既有資料庫的最佳 API 包裝層

uibakery

定位不同:不是傳統 BaaS,不提供資料庫,而是接上您現有的 SQL 資料庫 (Postgres/MySQL/MariaDB/SQLite/MS SQL/Oracle/CockroachDB),自動產生 REST/GraphQL API + 無代碼管理後台。

優點:

  • 零遷移:直接接上現有資料庫,不動原始資料
  • 細緻 RBAC 權限控制 (欄位層級)、Flows 自動化引擎、數位資產管理
  • 白標儀表板、SSO、2FA、審計日誌
  • 適合內部工具、CMS、客製化後台

缺點:

  • 需自行維護資料庫 (備份、HA、擴展)
  • BSL 1.1 授權:年營收 $5M 以下免費,超過需商業授權
  • 非「開箱即用」的完整後端,需搭配其他服務 (Auth、Storage、Functions 皆可外掛)

5. Supabase 官方自架版 — 完整功能但維運負擔重

supabase

官方 Docker Compose 包含 10+ 服務:
PostgreSQL、PostgREST、GoTrue (Auth)、Realtime、Storage、Edge Functions (Deno)、Studio、Kong (API Gateway)、PostgreSQL Meta、Vector、Logflare、pgbouncer 等。

關鍵限制 (官方文件明列) : supabase

  • Studio 僅支援單一專案,無多組織/多專案管理
  • 缺少平台級功能:Branching、進階指標、受控備份/PITR、Analytics、Vector Buckets、ETL、平台管理 API
  • 全由您負責:伺服器佈署、安全強化、OS/服務更新、Postgres 維運、HA/擴展、備份/災難恢復、監控、正常運行時間

適用場景:

  • 法規要求資料不出特定國家/自有資料中心
  • 已有 Kubernetes/DevOps 團隊能吸收維運成本
  • 需要完整 Supabase 功能集且不想付 Managed 方案溢價

社群簡化版minhng92/supabase-docker-compose、Dokploy 模板等單檔/少服務封裝,降低啟動門檻 github


成本對照 (自架視角,單位:USD/月)

方案 最低 VPS 規格 估算成本 (含 VPS) 適用規模
PocketBase 1 vCPU / 1GB RAM / 25GB SSD $5-10 (Hetzner/Cloudflare/RackNerd) < 10K MAU、輕量級
Appwrite 2 vCPU / 4GB RAM / 50GB SSD $20-40 (DigitalOcean/Hetzner) 10K-100K MAU
Nhost 2 vCPU / 4GB RAM / 50GB SSD $25-50 (多容器佔用較大) GraphQL 專案
Directus 1-2 vCPU / 2-4GB RAM $10-30 + 自管 DB 成本 視資料庫而定
Supabase 自架 4 vCPU / 8GB RAM / 100GB SSD $60-120+ (10+ 容器) 生產級、完整功能需求

參考:Appwrite 官方建議 2C/4G 起跳 ;Supabase 社群討論普遍建議 4C/8G 以上 。 reddit


選型決策樹

flowchart TD
    A[開始選型] --> B{是否需要 PostgreSQL 生態?}
    B -->|是| C{是否需要 GraphQL 為主?}
    C -->|是| D[Nhost<br/>但自架風險較高]
    C -->|否| E{團隊有 DevOps 能力維運 10+ 容器?}
    E -->|是| F[Supabase 官方自架]
    E -->|否| G[Appwrite (MariaDB 但功能完整)]

    B -->|否/不拘| H{專案規模/階段?}
    H -->|MVP/個人/側專案/輕量| I[PocketBase<br/>單一檔、零維運]
    H -->|中大型、既有 SQL DB| J[Directus<br/>包裝既有資料庫]
    H -->|完整 BaaS、行動優先| G

    style I fill:#e8f5e9
    style G fill:#e3f2fd
    style D fill:#fff3e0

台灣/亞太地區部署建議

雲端供應商 適合方案 參考價格 (TWD/月) 備註
Hetzner (芬蘭/德國/美東) PocketBase、Appwrite、Nhost $150-400 CP 值最高、網路品質佳、無台灣節點
DigitalOcean (新加坡/舊金山) Appwrite (Marketplace)、Supabase $300-800 一鍵部署最方便、新加坡延遲 ~40ms
Linode/Akamai (東京/新加坡) 通用 $300-700 東京節點延遲最低 (~30ms)
Vultr (東京/首爾) 通用 $200-600 高頻 CPU 方案適合資料庫
AWS/GCP/Azure (東京/台灣) 企業合規、BYOC $1000+ 北flank 支援 BYOC 部署至自有雲帳號 uibakery

提醒:台灣主機商 (HiNet/Seednet/Chief/Kbro) 頻寬昂貴且無國際帶寬優勢,不建議作為對外服務的 BaaS 主機。


遷移與共存策略

  1. 漸進式遷移:以 DirectusNhost 接管既有 Postgres,前端逐步切換 API
  2. 多後端共存
    • Auth/Storage 用 AppwriteSupabase Managed
    • 核心業務邏輯自架 PocketBaseDirectus
    • 即時協作/聊天用 Supabase RealtimeNhost GraphQL Subscriptions
  3. 資料同步:利用 PostgreSQL Logical Replication 或 CDC (Debezium) 在多後端間同步

總結建議

你的情況 推薦首選 備選
獨立開發者 / Side Project / MVP PocketBase Appwrite (要更多功能)
中小團隊 / 完整 BaaS / 行動 App Appwrite Nhost (要 GraphQL)
GraphQL 優先 / Hasura 經驗 Nhost (先 PoC 自架可行性) Supabase Managed + GraphQL
企業 / 既有資料庫 / 內部工具 / CMS Directus UI Bakery (低代碼前端) + 任意後端
法規強制自架 / 有完整 DevOps 團隊 Supabase 官方自架 Northflank BYOC 部署 Supabase 模板 uibakery

後續行動清單

  1. PoC 驗證 (1-2 天):在本地或 $5 VPS 用 Docker Compose 跑起候選方案,實測 API、Auth、Storage、即時訂閱
  2. 負載測試:用 k6hey 模擬預期 QPS,觀察資源使用率與延遲
  3. 備份/恢復演練:確認 RPO/RTO 符合業務需求
  4. 監控佈署:Grafana + Prometheus + Loki (或用 Northflank/Coolify 內建觀測)
  5. 文件化 Runbook:部署、擴容、備份、災難恢復、版本升級步驟

關鍵提醒:自架意味著 您就是 SRE。若團隊無專職 DevOps,建議優先評估 PocketBase (最輕)Appwrite (最完整單體),或直接使用 Managed 方案 (Supabase/Appwrite Cloud/Nhost Cloud) 以換取開發專注度。


參考資源彙整


資料截至 2026-06-06,價格與功能請以官方最新文件為準。