Pular para o conteúdo
EmbutidoPlataforma de nuvem

Crunu e Vercel: hospede o servidor, envie variáveis

Rode o seu servidor do Crunu na Vercel com Postgres no Neon, ou envie valores de um ambiente do Crunu para as variáveis de ambiente da Vercel a partir do CI.

Compatibilidade
Funciona com o Crunu hoje: o suporte a Vercel faz parte do produto.
Recursos do Crunu
Hospedagem própria e CI/CD
Conferido
Com o Crunu 6.0.0 em 28 de outubro de 2026
Exemplo. A Kiteline é uma empresa fictícia.

Recursos do Crunu que funcionam com Vercel

Cada recurso abaixo funciona do mesmo jeito em todas as integrações: o servidor guarda texto cifrado, e só as pessoas, máquinas e tokens que você autorizar conseguem descriptografar.

  • Hospedagem própria

    Rode o mesmo servidor do Crunu no seu host Docker, no Cloudflare Workers, na Vercel ou no Google Cloud Run, e mude entre eles com um único arquivo.

    Saiba mais

  • CI/CD

    Dê a cada pipeline um token de serviço limitado aos ambientes dele e vincule-o ao seu provedor de CI com OIDC, para que um token vazado não consiga entrar sozinho.

    Saiba mais

Como funciona com Vercel

Nesta página

Dois jeitos de o Crunu funcionar com a Vercel

  • Hospedar o servidor do Crunu na Vercel. Se a sua equipe já faz deploy lá, o servidor do Crunu tem um build para a Vercel que usa Postgres no Neon. Esta parte é embutida: um script faz o deploy.
  • Enviar valores para os seus próprios projetos na Vercel. O Crunu não tem sincronização embutida com as variáveis de ambiente da Vercel. Um pipeline pode enviá-las com uma receita curta, mostrada abaixo.

O próprio Crunu roda na nuvem em app.crunu.com, então você só precisa da primeira parte se quiser um servidor próprio.

Hospede o servidor na Vercel

Você precisa de Node.js 24, da CLI vercel com o vercel login feito, de um banco de dados Neon com o endereço com pooling em DATABASE_URL e de um arquivo .env criado pelo server-init. Os comandos rodam a partir do diretório do servidor do Crunu, onde ficam os scripts de deploy.

Shell
node scripts/server-init.mjs --origin https://vault.company.example --database-url env:DATABASE_URL
sh deploy/vercel/deploy.sh --project vault-company --prod

O script confere o .env, monta o servidor com o cliente web embutido, cria o projeto se for preciso, grava as variáveis de ambiente com valores passados pelo stdin e faz o deploy da saída já montada. O próprio servidor aplica as migrações de esquema no banco de dados dele.

Sem --prod, o script faz o deploy de uma preview com banco de dados próprio e chave do servidor própria, definidos como PREVIEW_DATABASE_URL e PREVIEW_SERVER_KEY. Um build de preview rodaria as migrações no banco de dados a que estivesse conectado, então o script se recusa a apontar uma preview para os dados de production, a menos que você passe --preview-with-production-db.

Agenda da limpeza

A limpeza de registros expirados roda num cron job da Vercel, só em deployments de production com CRON_SECRET definido. O padrão é uma vez por dia, porque o plano Hobby não permite uma agenda mais frequente; confira os limites atuais dos planos da Vercel. A expiração de sessões, links e acessos break-glass não depende dela, porque cada requisição os confere. Alguns alertas dependem. Se você usa restrições de rede com passes de máquina, rode a limpeza a cada minuto ou pelo menos a cada 5 minutos, o que exige o Vercel Pro, e passe a agenda em cada deploy:

Shell
sh deploy/vercel/deploy.sh --project vault-company --prod --cron "* * * * *"

Envie valores para a Vercel a partir do CI

Se um projeto seu na Vercel guarda as variáveis na Vercel, um pipeline pode copiá-las do Crunu. Use um token de production separado, com um vínculo de CI (OIDC) ao branch main e ao ambiente de deployment production, para que o token só funcione nesse job. Quem tem a função Owner aprova o acesso ao production para ele.

Shell
crunu run --env web-app/production -- sh -c 'printf "%s" "$DATABASE_URL" | vercel env add DATABASE_URL production --force'

O crunu run descriptografa o ambiente em memória e passa DATABASE_URL ao comando, que o entrega ao vercel env add pelo stdin, nunca como argumento. Cada execução fica registrada no log de auditoria do Crunu: quem, quando, de qual endereço e qual versão.

Veja também

Dúvidas e respostas

Não encontrou a resposta? Escreva para support@crunu.com, e uma pessoa vai responder.

Um deployment de preview pode mexer nos dados de production?

Por padrão, não. Uma preview recebe banco de dados e chave do servidor próprios, e o script recusa o banco de production, a menos que você passe --preview-with-production-db.

Com que frequência a limpeza roda?

Uma vez por dia, por padrão. Com restrições de rede e passes de máquina, rode-a a cada minuto ou a cada 5 minutos, o que exige o Vercel Pro.

O Crunu sincroniza com as variáveis de ambiente da Vercel?

Não sozinho. Um pipeline com um token de production vinculado por OIDC pode enviar valores com vercel env add rodando sob o crunu run.

Experimente com Vercel

Crie a sua organização em app.crunu.com, adicione um ambiente e conecte-o. Grátis durante o acesso antecipado.