Crunu et Vercel : héberger le serveur, pousser les variables
Faites tourner votre serveur Crunu sur Vercel avec Postgres sur Neon, ou poussez depuis la CI les valeurs d’un environnement Crunu dans les variables de Vercel.
- Prise en charge
- Fonctionne avec Crunu aujourd’hui : le produit prend en charge Vercel nativement.
- Fonctionnalités Crunu
- Auto-hébergement et CI/CD
- Vérifié
- Avec Crunu 6.0.0, le 28 octobre 2026
Les fonctionnalités Crunu qui fonctionnent avec Vercel
Chaque fonctionnalité ci-dessous fonctionne de la même façon dans chaque intégration : le serveur garde des données chiffrées, et seuls les personnes, les machines et les jetons que vous autorisez peuvent les déchiffrer.
Auto-hébergement
Faites tourner le même serveur Crunu sur votre hôte Docker, Cloudflare Workers, Vercel ou Google Cloud Run, et passez de l’un à l’autre avec une seule archive.
En savoir plus
CI/CD
Donnez à chaque pipeline un jeton de service limité à ses environnements, et liez-le à votre fournisseur de CI par OIDC : un jeton qui fuit ne peut pas se connecter seul.
En savoir plus
Comment ça marche avec Vercel
Sur cette page
Deux façons d’utiliser Crunu avec Vercel
- Héberger le serveur Crunu sur Vercel. Si votre équipe y déploie déjà, le serveur Crunu a une version pour Vercel qui utilise Postgres sur Neon. Cette partie est intégrée : un seul script la déploie.
- Pousser des valeurs dans vos propres projets Vercel. Crunu n’a pas de synchronisation intégrée vers les variables d’environnement Vercel. Un pipeline peut les y pousser avec une courte recette, présentée plus bas.
Crunu lui-même tourne dans le cloud sur app.crunu.com : la première partie ne vous sert que si vous voulez votre propre serveur.
Héberger le serveur sur Vercel
Il vous faut Node.js 24, la CLI vercel avec vercel login effectué, une base de données Neon avec son adresse en pool dans DATABASE_URL, et un fichier .env créé par server-init. Les commandes se lancent depuis le répertoire du serveur Crunu, où se trouvent les scripts de déploiement.
node scripts/server-init.mjs --origin https://vault.company.example --database-url env:DATABASE_URL
sh deploy/vercel/deploy.sh --project vault-company --prodLe script vérifie le .env, construit le serveur avec le client web intégré, crée le projet si besoin, écrit les variables d’environnement avec des valeurs transmises par stdin, et déploie la sortie préconstruite. Le serveur applique lui-même les migrations de schéma à sa base de données.
Sans --prod, le script déploie une préversion avec sa propre base de données et sa propre clé de serveur, définies dans PREVIEW_DATABASE_URL et PREVIEW_SERVER_KEY. Un build de préversion exécuterait ses migrations sur la base à laquelle il est connecté : le script refuse donc de faire pointer une préversion vers les données de production, sauf si vous passez --preview-with-production-db.
Planification du nettoyage
Le nettoyage des enregistrements expirés tourne sur une tâche cron Vercel, uniquement pour les déploiements de production où CRON_SECRET est défini. Par défaut, c’est une fois par jour, car le forfait Hobby n’autorise pas une fréquence plus élevée ; consultez les limites actuelles des forfaits Vercel. L’expiration des sessions, des liens et de l’accès d’urgence (break-glass) n’en dépend pas, car chaque requête la vérifie. Certaines alertes, si. Si vous utilisez des restrictions réseau avec des laissez-passer machine, lancez le nettoyage chaque minute ou au moins toutes les 5 minutes, ce qui demande Vercel Pro, et passez la planification à chaque déploiement :
sh deploy/vercel/deploy.sh --project vault-company --prod --cron "* * * * *"Pousser des valeurs dans Vercel depuis la CI
Si l’un de vos projets Vercel garde ses variables dans Vercel, un pipeline peut les copier depuis Crunu. Utilisez un jeton de production distinct, avec une liaison CI (OIDC) à la branche main et à l’environnement de déploiement production : le jeton ne fonctionne alors que dans ce seul job. Un propriétaire approuve son accès à production.
crunu run --env web-app/production -- sh -c 'printf "%s" "$DATABASE_URL" | vercel env add DATABASE_URL production --force'crunu run déchiffre l’environnement en mémoire et transmet DATABASE_URL à la commande, qui le passe à vercel env add par stdin, jamais comme argument. Chaque exécution est consignée dans le journal d’audit de Crunu : qui, quand, depuis quelle adresse et quelle version.
Voir aussi
Questions et réponses
Votre question n’est pas traitée ici ? Écrivez à support@crunu.com : une personne vous répondra.
Un déploiement de préversion peut-il toucher aux données de production ?
Pas par défaut. Une préversion a sa propre base de données et sa propre clé de serveur, et le script refuse la base de production sauf si vous passez --preview-with-production-db.
À quelle fréquence tourne le nettoyage ?
Une fois par jour par défaut. Avec des restrictions réseau et des laissez-passer machine, lancez-le chaque minute ou toutes les 5 minutes, ce qui demande Vercel Pro.
Crunu synchronise-t-il vers les variables d’environnement Vercel ?
Pas de lui-même. Un pipeline avec un jeton de production lié par OIDC peut pousser les valeurs avec vercel env add lancé sous crunu run.