Aller au contenu
IntégréPlateforme cloud

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
Exemple. Kiteline est une entreprise fictive.

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.

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

Le 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 :

Shell
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.

Shell
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.

Essayez avec Vercel

Créez votre organisation sur app.crunu.com, ajoutez un environnement et connectez-le. Gratuit pendant l’accès anticipé.