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>
24 lines
1.1 KiB
YAML
24 lines
1.1 KiB
YAML
# 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
|