Hospede o servidor do Crunu no Cloudflare Workers e no D1
Faça o deploy do seu servidor do Crunu no Cloudflare Workers com um banco D1 em um script. Código e segredos vão como uma versão, e a limpeza roda num cron.
- Compatibilidade
- Funciona com o Crunu hoje: o suporte a Cloudflare Workers 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
Recursos do Crunu que funcionam com Cloudflare Workers
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 Cloudflare Workers
Nesta página
O que o Crunu faz no Cloudflare
O Crunu roda na nuvem em app.crunu.com, então você não precisa fazer o deploy de nada para começar. Se você quer um servidor próprio sem administrar uma máquina, o servidor do Crunu tem um build para o Cloudflare Workers que guarda os dados no D1.
O servidor é cego no Workers como em qualquer outro lugar: o D1 guarda texto cifrado, chaves públicas, documentos assinados e metadados, nunca uma chave que descriptografe um valor.
Deploy
Você precisa de Node.js 24, do wrangler com o wrangler login feito 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.
node scripts/server-init.mjs --origin https://vault.company.example
sh deploy/cloudflare/deploy.sh --name vault-company --location weurO script confere o .env com o mesmo código que o servidor usa ao iniciar, monta o Worker, cria o banco D1 vault-company-db se ele não existir e faz o deploy do Worker junto com os segredos dele como uma só versão. Código e chaves mudam no mesmo momento, e se o deploy falhar, nada muda no Worker. As migrações de esquema rodam na primeira requisição.
Para montar e inspecionar o que seria publicado sem fazer o deploy, adicione --build-only. O script imprime a impressão digital do build e os nomes dos segredos que enviaria, e para. O build é reproduzível, então rodar o mesmo comando sem a flag publica exatamente o que você inspecionou.
Vincule o seu próprio domínio ao Worker no painel do Cloudflare e use-o como o PUBLIC_ORIGIN do servidor. A limpeza de sessões expiradas e o corte do log de auditoria rodam num cron trigger a cada 5 minutos.
Escolha o plano certo
Configurações a conferir depois do deploy
- Compressão nas respostas da API. O Worker responde
/v2/*sem compressão, para que o tamanho das respostas não revele nada. Rode odoctorcontra o seu domínio. Se ele acusar compressão, adicione uma Compression Rule que desative a compressão para os caminhos que começam com/v2/. - URLs de preview. Cada versão enviada do Worker pode ter o próprio endereço
workers.dev, que funciona com o mesmo banco de dados e os mesmos segredos. O template do Crunu desativa as URLs de preview, e o script de deploy as desativa também nas versões antigas do Worker. Não as reative. - Pseudo IPv4. Para as restrições de rede, mantenha a configuração Pseudo IPv4 da zona desativada ou em Add header. No modo Overwrite headers, os clientes IPv6 aparecem com endereços substitutos e não batem com as regras IPv6.
node scripts/doctor.mjs https://vault.company.exampleCloudflare Tunnel para a sua própria máquina
Se você prefere rodar o servidor na sua própria máquina, o Cloudflare Tunnel o publica sem portas abertas. Essa configuração faz parte da integração com o Docker.
Segredos do Cloudflare para os seus próprios apps
O Crunu não tem sincronização embutida com os segredos do Cloudflare. Se um Worker seu guarda os valores no Cloudflare, um pipeline pode enviá-los com a CLI do próprio Cloudflare rodando sob o crunu run, usando um token de production vinculado ao main e ao ambiente de deploy de production com OIDC. Cada execução aparece no log de auditoria do Crunu. A página da Vercel mostra o padrão com um comando concreto.
Veja também
Dúvidas e respostas
Não encontrou a resposta? Escreva para support@crunu.com, e uma pessoa vai responder.
O plano Workers Free é suficiente?
Para um teste. Uma equipe precisa do Workers Paid: no Free, uma requisição pesada pode ficar sem tempo de CPU, e a limpeza precisa de mais consultas ao D1 do que o Free permite.
Posso conferir antes o que seria publicado?
Sim. A flag --build-only monta o Worker, imprime a impressão digital dele e os nomes dos segredos que seriam enviados, e para.
O Crunu sincroniza valores com os segredos do Cloudflare?
Não. Um pipeline pode enviá-los com a CLI do próprio Cloudflare rodando sob o crunu run.