OpenCall

Banco de dados

Postgres — pelo addon do Railway ou por qualquer provedor.

O OpenCall usa Postgres através do Prisma. Qualquer Postgres gerenciado serve — o requisito é um DATABASE_URL válido.

Opção A: addon do Railway

Se o Next.js vai pro Railway (ver Deploy produção (Railway)):

No seu projeto do Railway: New → Database → Add PostgreSQL.

Menu de escolha de banco com PostgreSQL em destaque

No serviço do app, defina DATABASE_URL=${{Postgres.DATABASE_URL}} — o Railway resolve a referência, sem você copiar connection string na mão.

Opção B: Neon (grátis)

Usado no Deploy demo (Render). Plano free, sem cartão, e dá pra criar inteiro pela linha de comando:

Instale a CLI:

npm install -g neonctl

Gere uma chave em Account settings → API keys e informe ela ao terminal:

export NEON_API_KEY="COLE_SUA_CHAVE_AQUI"

Crie o projeto:

neonctl projects create --name opencall --output json

Peça a connection string:

neonctl connection-string --output json

Use a connection string pooled (o host com sufixo -pooler) como DATABASE_URL.

Diagrama: o Neon devolve uma connection string direta e uma pooled; a pooled tem o sufixo -pooler no host e é a que o DATABASE_URL precisa

Limites do Neon Free

0,5 GB por projeto e 100 CU-horas de compute por mês; o banco suspende após 5 minutos ocioso, somando ~1s na próxima query. Quando a cota mensal acaba, o compute fica suspenso até o próximo ciclo.

Criar as tabelas

Depois do primeiro deploy, com o DATABASE_URL configurado, rode uma vez:

pnpm prisma db push

Isso cria todas as tabelas do prisma/schema.prisma. Sem esse passo o app builda e quebra na primeira query.

O repositório não versiona prisma/migrations/, então o comando é db push, não migrate deploy.

Variáveis desta etapa

VariávelValor
DATABASE_URLpostgresql://usuario:senha@host:5432/opencall

On this page