若您在尋找 Supabase 的自架替代方案,主要有五大主流選擇:Appwrite、Nhost、PocketBase、Directus,以及 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 替代品
優點:
- 完整的 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 架構
優點:
- 原生 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 — 極致輕量、單一執行檔、零依賴
優點:
- 單一 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 包裝層
定位不同:不是傳統 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 官方自架版 — 完整功能但維運負擔重
官方 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 主機。
遷移與共存策略
- 漸進式遷移:以 Directus 或 Nhost 接管既有 Postgres,前端逐步切換 API
- 多後端共存:
- Auth/Storage 用 Appwrite 或 Supabase Managed
- 核心業務邏輯自架 PocketBase 或 Directus
- 即時協作/聊天用 Supabase Realtime 或 Nhost GraphQL Subscriptions
- 資料同步:利用 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 |
後續行動清單
- PoC 驗證 (1-2 天):在本地或 $5 VPS 用 Docker Compose 跑起候選方案,實測 API、Auth、Storage、即時訂閱
- 負載測試:用
k6或hey模擬預期 QPS,觀察資源使用率與延遲 - 備份/恢復演練:確認 RPO/RTO 符合業務需求
- 監控佈署:Grafana + Prometheus + Loki (或用 Northflank/Coolify 內建觀測)
- 文件化 Runbook:部署、擴容、備份、災難恢復、版本升級步驟
關鍵提醒:自架意味著 您就是 SRE。若團隊無專職 DevOps,建議優先評估 PocketBase (最輕) 或 Appwrite (最完整單體),或直接使用 Managed 方案 (Supabase/Appwrite Cloud/Nhost Cloud) 以換取開發專注度。
參考資源彙整
| 類別 | 連結 |
|---|---|
| Appwrite 自架官方指南 | Self-hosting - Docs - Appwrite |
| Nhost Docker Compose | GitHub - nhost/nhost: The Open Source Firebase Alternative with GraphQL. · GitHub |
| PocketBase 生產部署 | Going to production - Docs - PocketBase |
| Supabase 官方自架文件 | Self-Hosting | Supabase Docs |
| Supabase 簡化版 Docker Compose | GitHub - minhng92/supabase-docker-compose: Pre-configuration Supabase docker-compose with zero setup (for development environment only) · GitHub |
| Directus 自架指南 | https://docs.directus.io/self-hosted/installation.html |
| Northflank BYOC 部署 Supabase | Top 6 Supabase Alternatives in 2026 | Blog — Northflank |
| Coolify 部署 Appwrite 教學 | Self-hosting Appwrite with Coolify - Appwrite |
資料截至 2026-06-06,價格與功能請以官方最新文件為準。