Files
Valentin Le Moign 48b7f97954 Stack d'orchestration Figures Libres (Docker Compose)
Câble ensemble le générateur (dépôt generator/) et le CMS Grav d'exemple
(dépôt grav-reference/, monté :ro), tous deux clonés côte à côte et non
versionnés ici. Contient : docker-compose dev + surcouche prod (rsync/SSH),
image Grav (docker/grav), doc de câblage.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-05 18:38:04 +02:00

2.1 KiB

CLAUDE.md — stack Figures Libres (orchestration)

Dépôt d'orchestration de l'environnement du générateur de portfolios. Il ne contient pas de code applicatif : il câble ensemble trois checkouts posés côte à côte, via Docker Compose.

portfolio-maker/                 ← CE dépôt (stack)
├── docker-compose.yml           # grav-reference (8089) + generator (8091)
├── docker-compose.prod.yml      # surcouche déploiement (build Nitro + rsync prod)
├── docker/grav/Dockerfile       # image PHP+Apache servant grav-reference/
├── generator/                   ← dépôt À PART (l'app) — cloné ici, git-ignoré
└── grav-reference/              ← dépôt À PART (CMS d'exemple) — cloné ici, git-ignoré

Règle absolue : tout tourne dans Docker

Node, build Nuxt, Playwright/Chromium, Ghostscript, ffmpeg, rsync — rien sur l'hôte. Exception connue : vérifier le rendu d'un PDF (pdftoppm) peut se faire sur l'hôte, les templates print étant piégeux (voir generator/CLAUDE.md).

docker compose up -d          # grav-reference + generator

Les trois composants

  • generator/ — l'app Nuxt = le livrable. Dépôt autonome (Dockerfile inclus), poussé sur le gitea figureslibres.io. Toute la doc app est dans generator/CLAUDE.md.
  • grav-reference/ — le vrai site Grav, son propre dépôt (~4,8 Go), monté :ro. Source de contenu en lecture seule, jamais modifié.
  • Ce dépôt — compose, image Grav, doc de câblage. Ne versionne ni generator/ ni grav-reference/ (ils ont chacun leur dépôt).

Déploiement (mode prod)

Contenu tiré de la prod par rsync/SSH en lecture seule vers generator/data/content-cache/, déclenché par le bouton « Rafraîchir ». Voir les variables .env (non versionné) documentées dans docker-compose.prod.yml.

docker compose -f docker-compose.yml -f docker-compose.prod.yml up -d generator