Grace
Déploiement

Dev local

Lancer la plateforme en local avec Docker Compose et l'ingress Caddy.

En local, la plateforme tourne en docker-compose : 4 conteneurs + Caddy en ingress.

Démarrer

cd platform
cp .env.example .env        # ajuster les secrets
docker compose up --build

Accès

Accès direct aux conteneurs (dev) :

Accès via l'ingress Caddy (comme en prod) — Caddy provisionne un TLS local pour localhost et redirige HTTP→HTTPS (CA auto-signée → -k avec curl) :

Base de données & seed

Au démarrage, le conteneur backend exécute entrypoint.sh : migrations (dist/migrate.js) puis seed idempotent (dist/seed/seed.js) avant de lancer le serveur.

  • ORM : Drizzle (Postgres). Schéma dans backend/src/db/schema/*.ts, migrations drizzle-kit dans backend/src/db/migrations/.
  • Le seed lit le catalogue monté (/catalog) et crée : le compte démo (GRACE_OWNER_EMAIL / GRACE_OWNER_PASSWORD, e-mail/mot de passe) owner d'une organisation démo pré-approuvée (grace-demo, statut approved), le catalogue (catalog_talents), un projet démo billing-demo rattaché à cette organisation, un token projet de dev et la sélection (project_talents, tout le catalogue activé pour la démo). Les vrais utilisateurs se créent via e-mail/mot de passe, Google ou le SSO de leur organisation.
  • Token de dev : grc_proj_demo (override via GRACE_DEV_TOKEN). Le hash est stocké, le clair est imprimé au seed — c'est le bearer à coller dans le .mcp.json du repo client.

Inspecter la base :

docker compose exec postgres psql -U grace -d grace -c "\dt"

→ La liste des variables est dans Variables d'environnement.

On this page