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>
This commit is contained in:
23
docker-compose.prod.yml
Normal file
23
docker-compose.prod.yml
Normal file
@@ -0,0 +1,23 @@
|
||||
# Surcouche de déploiement (spec §5.2) :
|
||||
# docker compose -f docker-compose.yml -f docker-compose.prod.yml up -d generator
|
||||
#
|
||||
# - contenu tiré de la prod Figures Libres par rsync/SSH (bouton « Rafraîchir »)
|
||||
# - build Nuxt puis serveur Nitro (pas de serveur de dev)
|
||||
# - variables à définir dans un fichier .env (non versionné) :
|
||||
# PORTFOLIO_PASSWORD=… mot de passe partagé
|
||||
# SESSION_SECRET=… secret de session (longue chaîne aléatoire)
|
||||
# INTERNAL_TOKEN=… jeton interne du rendu print
|
||||
# SYNC_REMOTE=user@host:/chemin/vers/user/pages/02.projets/
|
||||
# SYNC_SSH_KEY_FILE=~/.ssh/portfolio_sync clé privée SSH (lecture seule)
|
||||
services:
|
||||
generator:
|
||||
command: sh -c "npm run build && npm run preview"
|
||||
environment:
|
||||
NUXT_CONTENT_SOURCE: prod
|
||||
NUXT_SYNC_REMOTE: ${SYNC_REMOTE:?SYNC_REMOTE requis en mode prod}
|
||||
NUXT_SYNC_SSH_KEY: /run/secrets/sync-ssh-key
|
||||
NITRO_HOST: 0.0.0.0
|
||||
NITRO_PORT: 3000
|
||||
volumes:
|
||||
- ./generator:/app
|
||||
- ${SYNC_SSH_KEY_FILE:?SYNC_SSH_KEY_FILE requis en mode prod}:/run/secrets/sync-ssh-key:ro
|
||||
Reference in New Issue
Block a user