ContenuPied de page
Roadmaps Faciles
Roadmaps Faciles
BienvenuePremiers pas

Comprendre

Utiliser

Gérer

Technique

Documentation techniqueConfiguration DNSDéploiementSelf-hostingSécuritéTracking & AnalyticsFeature Flags

FAQ
Technique

Déploiement

Guide de déploiement de Roadmaps Faciles sur différentes plateformes.

Section technique

Cette page s'adresse aux équipes techniques en charge du déploiement et de l'hébergement de l'instance.

Prérequis

  • Node.js 24 ou supérieur
  • PostgreSQL 15 — Base de données principale
  • Redis — Cache et sessions
  • SMTP — Envoi d'emails (magic links, invitations)

Plateformes supportées

Scalingo

Roadmaps Faciles supporte nativement le déploiement sur Scalingo. Le fournisseur de domaine Scalingo gère automatiquement les certificats TLS et l'ajout de domaines personnalisés via l'API Scalingo.

Variables d'environnement spécifiques :

  • DOMAIN_PROVIDER=scalingo ou DOMAIN_PROVIDER=scalingo-wildcard
  • DOMAIN_SCALINGO_API_TOKEN, DOMAIN_SCALINGO_API_URL, DOMAIN_SCALINGO_APP_ID

Clever Cloud

Le déploiement sur Clever Cloud est supporté avec la gestion automatique des domaines personnalisés.

Variables d'environnement spécifiques :

  • DOMAIN_PROVIDER=clevercloud
  • DOMAIN_CLEVERCLOUD_* (consumer key, secret, token, app ID)

Docker / VPS

Pour un déploiement sur serveur dédié ou VPS, utilisez Caddy comme reverse proxy pour la gestion TLS on-demand :

  • DOMAIN_PROVIDER=caddy
  • DOMAIN_CADDY_ADMIN_URL — URL de l'API admin Caddy

Caddy interroge l'endpoint /api/domains/check?domain=... avant d'émettre un certificat, pour vérifier que le domaine est autorisé.

Déploiement automatisé (CI/CD)

Le déploiement est piloté par GitHub Actions via le workflow deploy.yml qui push le code vers Scalingo :

ÉvénementEnvironnementApp Scalingo
Push sur dev (après CI)Stagingroadmaps-faciles-staging
Release (tag release-please)Productionroadmaps-faciles
Déclenchement manuelStaging ou ProductionAu choix

Les review apps sont gérées nativement par l'intégration GitHub de Scalingo : une app éphémère est créée automatiquement pour chaque pull request.

Le workflow attend que les jobs CI (build, lint, tests) passent avant de déployer. Un déclenchement manuel (workflow_dispatch) est disponible pour les deux environnements.

Les secrets Scalingo (SCALINGO_API_TOKEN) sont stockés dans les GitHub Environments (staging, production).

Variables d'environnement principales

VariableDescriptionObligatoire
DATABASE_URLURL de connexion PostgreSQLOui
REDIS_URLURL de connexion RedisOui
SECURITY_JWT_SECRETSecret pour les tokens JWT et HMACOui
SECURITY_WEBHOOK_SECRETSecret pour la signature des webhooksOui
MAILER_SMTP_HOSTHôte du serveur SMTPOui
MAILER_FROM_EMAILAdresse d'expédition des emailsOui
NEXT_PUBLIC_SITE_URLURL publique de l'instanceOui
ADMINSIdentifiants des super-administrateurs (séparés par virgule)Oui
DOMAIN_PROVIDERFournisseur de domaine (noop, scalingo, caddy...)Non
DNS_PROVIDERFournisseur DNS (noop, manual, ovh, cloudflare)Non
PLATFORM_DOMAINDomaine de la plateforme d'hébergement (ex: scalingo.io) — redirige vers NEXT_PUBLIC_SITE_URLNon
SENTRY_DSNDSN Sentry pour le suivi d'erreurs (vide = désactivé)Non

La liste complète des variables est documentée dans le fichier .env.development du projet.

Observabilité

ComposantDescription
Logs structurésPino (JSON en production, formaté en dev). Logger serveur uniquement.
Suivi d'erreursSentry (optionnel, activé par SENTRY_DSN). Auto-instrumente RSC, Server Actions, Prisma.
Health checkGET /api/healthz — Vérifie la connectivité DB et Redis. HTTP 200 si OK, 503 sinon.
Correlation IDUUID généré par requête, propagé via l'en-tête x-correlation-id (requête et réponse).

Configuration DNS

Guide technique pour la configuration DNS des domaines personnalisés.

Self-hosting

Guide complet pour déployer Roadmaps Faciles sur votre propre infrastructure.

On this page

Prérequis
Plateformes supportées
Scalingo
Clever Cloud
Docker / VPS
Déploiement automatisé (CI/CD)
Variables d'environnement principales
Observabilité