Supabase
Backend на своем сервере: Postgres, авто-REST и GraphQL API поверх таблиц, аутентификация, realtime, хранилище файлов и админка Studio. Аналог Firebase. Лицензия Apache-2.0.
Supabase - open-source платформа-бэкенд (BaaS) и self-hosted аналог Firebase. Дает из коробки: базу PostgreSQL, авто-REST и GraphQL API поверх ваших таблиц, аутентификацию (email, OAuth, phone, MFA), realtime-подписки на изменения БД, хранилище файлов, edge-функции и веб-админку Studio (табличный и SQL-редактор, управление доступом).
В отличие от Firebase, все на вашем сервере: без вендор-лока, без оплаты за чтения, данные остаются у вас. Создаете таблицу в Postgres - и она сразу доступна как REST API. Это мощный self-hosted бэкенд под серьезные приложения (в отличие от легкого PocketBase на SQLite).
После создания сервера Supabase ставится автоматически: официальный docker-стек за Kong, наружу через Caddy (Let's Encrypt на magic-DNS домене). Studio закрыт паролем сервера. API-ключи генерируются автоматически.
Что внутри
- PostgreSQL 17
- ядро: ваши данные, роли, политики доступа (RLS).
- Kong
- API-gateway, за ним все сервисы; наружу только через Caddy.
- GoTrue (Auth), PostgREST (авто-REST), Realtime, Storage + imgproxy, postgres-meta, Studio (админка), supavisor (пулер), Edge Functions.
- Caddy
- reverse-proxy и авто-TLS (Let's Encrypt).
Безопасность
- Studio закрыт паролем сервераbasic-auth на Kong (логин admin, пароль вашей машины).
- API-ключипубличный
anonи секретныйservice_role(HS256-JWT), лежат в файле кредов на сервере. - fail2banбанит IP после серии неудачных попыток входа по SSH.
- HTTPS + security-заголовкиLet's Encrypt (авто-продление), HSTS. Kong слушает только localhost, наружу - через Caddy.
- Данные на вашем сервереPostgres в томе docker, не в чужом облаке.
Как войти
Адрес формируется из IP сервера: замените точки на дефисы и добавьте
.fatmetal.net. Пример: IP45.15.159.10->https://45-15-159-10.fatmetal.net/.Studio: логин
admin, пароль - тот же, что у вашего сервера (в личном кабинете).API-ключи (
anon,service_role) и полный.envс секретами - в файле/root/supabase-credentials.txtна сервере (вход по SSH).Создайте таблицу в SQL-редакторе - Supabase сразу отдаст по ней REST на
/rest/v1/.
Важно
Тяжелый стек: комфортный тариф от CPU4-RAM8, в простое около 2 ГБ RAM, образы ~9 ГБ. Данные - в томе Postgres (/opt/supabase/volumes/db/data), бэкапьте его. Edge Functions требуют доступ к реестру Deno/JSR, который из РФ может блокироваться - это опциональный сервис, ядро (БД, auth, REST, realtime, storage, Studio) работает без него. Порты сервисов наружу не публикуются - только через Caddy с TLS.
Лицензия
Supabase - открытый код под лицензией Apache-2.0: свободное использование, в том числе коммерческий self-host-хостинг.
Свой домен
Наведите CNAME на этот сервер, впишите домен в /etc/caddy/Caddyfile и в SUPABASE_PUBLIC_URL, API_EXTERNAL_URL, SITE_URL (/opt/supabase/.env), затем cd /opt/supabase && docker compose up -d и systemctl reload caddy.
Требования
Ubuntu 24.04, открытые порты 80/443. Тяжелый стек: минимум CPU4-RAM8, в простое ~2 ГБ RAM, образы ~9 ГБ, диск от 40 ГБ. Первый старт дольше обычного: пул ~11 образов + миграции.