Voltar

Hospedagem Supabase em VPS, já instalado

O Supabase auto-hospedado reúne no seu servidor um banco Postgres, autenticação, armazenamento de arquivos e serviços em tempo real. A configuração oficial do Supabase em Docker inicia sozinha depois do pagamento, o Studio abre por HTTPS, e o endereço, o login e a senha aparecem no seu painel. Aponte seu app para esse endereço com a chave pública (publishable) do servidor e acesse o banco de dados pela porta 5432 ou 6543.

De quanto poder você precisa?

Total$6.89/mês

Os preços incluem impostos.

Aumente ou reduza RAM e CPU quando quiser. O disco só pode crescer, então comece pequeno.

O que vem instalado no seu servidor Supabase?

  • Configuração oficial do Supabase em Docker, fixada na tag de versão v1.26.08
  • PostgreSQL 17 e a tela de administração Studio
  • Os serviços Auth, PostgREST, Realtime, Storage e Edge Runtime
  • Pooler de conexões Supavisor, com as portas 5432 e 6543 abertas
  • SUPABASE_PUBLISHABLE_KEY, SUPABASE_SECRET_KEY, ANON_KEY, SERVICE_ROLE_KEY e POSTGRES_PASSWORD, geradas pelos scripts oficiais
  • HTTPS pelo Caddy em um endereço sslip.io baseado no seu IP, então um domínio é opcional
  • Configurações em /opt/seturack/supabase/.env
  • Firewall com apenas as portas 22, 80, 443, 5432 e 6543 abertas

Qual tamanho você precisa para Supabase?

A documentação do Supabase em Docker define o mínimo em 4 GB de RAM, 2 núcleos e 40 GB de disco, e recomenda 8 GB ou mais de RAM, 4 ou mais núcleos e 80 GB ou mais de disco. Use 4 GB como ponto de partida para desenvolvimento e projetos pequenos, e considere 8 GB para um projeto com usuários reais. Remover do arquivo Compose os serviços que você não usa, como Realtime ou Storage, reduz os requisitos. Se não for suficiente, aumente RAM, CPU e disco separadamente pelo painel, e seus dados e seu endereço IP continuam os mesmos.

UsoTamanhoPreçoEscolher
Inicial 4 GB RAM · 2 vCore · 60 GB NVMe $6.89/mês
Médio 8 GB RAM · 4 vCore · 120 GB NVMe $13.62/mês
Potente 16 GB RAM · 8 vCore · 200 GB NVMe $25.15/mês

Para quem é?

  • Quem está levando um projeto Supabase para o próprio servidor
  • Quem criou um app com ferramentas de IA e quer o banco de dados e o login em um servidor próprio
  • Desenvolvedores que montam o próprio ambiente de desenvolvimento e testes

O que acontece depois do pedido?

  1. Defina o tamanho e conclua o pagamento.
  2. Seu servidor inicia e o Supabase se instala sozinho. Nos nossos testes em servidores reais, isso levou cerca de 8 minutos. Na aba Visão geral, espere a linha App dizer que o Supabase está pronto.
  3. Abra o link da linha Endereço do painel. O navegador pede o Login e a Senha e depois o Studio abre.
  4. Conecte-se por SSH e leia as chaves: grep -E '^(SUPABASE_PUBLISHABLE_KEY|SUPABASE_SECRET_KEY|POSTGRES_PASSWORD)=' /opt/seturack/supabase/.env
  5. Passe ao seu app o Endereço do painel e a chave publishable, e mantenha a chave secreta apenas no lado do servidor.
  6. Defina SITE_URL e ADDITIONAL_REDIRECT_URLS no .env com o endereço do seu app e execute docker compose up -d.

Em todo servidor

  • Backup diário incluído no preço
  • Tráfego ilimitado
  • Acesso root completo
  • Aumente ou reduza RAM e CPU depois, e aumente o disco
  • Localização: Istanbul · IST-1.

Bom saber

  • O Supabase auto-hospedado roda um único projeto. A documentação oficial diz que branching, PITR, a Management API e analytics buckets não estão disponíveis nesta configuração.
  • Depois da instalação, o SITE_URL do Auth é o endereço do Studio protegido por senha, então os links dos e-mails vão para lá. Coloque o endereço do seu app em SITE_URL e ADDITIONAL_REDIRECT_URLS.
  • As portas 5432 e 6543 estão abertas para a internet, e o ufw não consegue fechá-las porque o Docker as publica. Para limitá-las, adicione 127.0.0.1: no início das linhas de porta do Supavisor em docker-compose.yml e use um túnel SSH.
  • As atualizações são responsabilidade sua. O Supabase publica sua configuração Compose cerca de uma vez por mês, e o script update.sh na pasta incorpora as mudanças à sua instalação.

Perguntas e respostas sobre Supabase

De quanta RAM o Supabase auto-hospedado precisa?

A documentação do Supabase pede pelo menos 4 GB de RAM, 2 núcleos e 40 GB de disco para uma instalação auto-hospedada e recomenda 8 GB ou mais de RAM. Remover do arquivo Compose os serviços que você não usa reduz os requisitos.

Onde encontro minhas chaves de API do Supabase?

Conecte-se por SSH e olhe em /opt/seturack/supabase/.env. A SUPABASE_PUBLISHABLE_KEY é para o código do cliente. A SUPABASE_SECRET_KEY tem todos os direitos e pertence apenas ao lado do servidor. As antigas ANON_KEY e SERVICE_ROLE_KEY continuam funcionando.

Como conecto meu app ao Supabase auto-hospedado?

Com o supabase-js, passe o Endereço do painel e o valor de SUPABASE_PUBLISHABLE_KEY para o createClient. REST, Auth, Storage e Realtime ficam todos sob esse endereço. O login e a senha que o navegador pede valem só para o Studio, e as requisições de API são verificadas por chave.

Como me conecto ao banco de dados do Supabase de fora?

As conexões passam pelo Supavisor: postgres://postgres.your-tenant-id:POSTGRES_PASSWORD@ADDRESS:5432/postgres. A porta 5432 é o modo de sessão e a 6543 é o modo de transação. O your-tenant-id é o valor de POOLER_TENANT_ID no .env. O Postgres em si não é publicado para fora.

Por que os e-mails de cadastro do Supabase não chegam?

Nenhum servidor SMTP de verdade é configurado na instalação, então os cadastros com confirmação por e-mail não conseguem terminar. Preencha os valores que começam com SMTP_ em /opt/seturack/supabase/.env com os dados do seu provedor de e-mail e depois execute docker compose up -d nessa pasta. Para permitir cadastros sem confirmação, veja a configuração ENABLE_EMAIL_AUTOCONFIRM.

Posso rodar vários projetos do Supabase?

Uma instalação roda um único projeto, e o Studio não oferece suporte a várias organizações ou projetos. Use um servidor separado para cada projeto.

Os dados do meu Supabase têm backup?

Seu servidor tem backup toda noite, com os últimos 7 dias guardados, e isso está incluído no preço. Os backups gerenciados e o PITR do Supabase não fazem parte de uma instalação auto-hospedada. Para voltar a um momento específico, guarde também seus próprios arquivos pg_dump.

Leia mais e veja apps parecidos