Déploiement
Le site Showcase est déployé en conteneur Docker, souvent avec le reste de la stack, mais il peut être autonome.
Stratégie Docker
Nous utilisons un build multi-étapes pour garder l'image légère (sortie standalone Next.js).
Le sidecar de migration
Une particularité du projet est le service migrate dans docker-compose.yml.
migrate:
command: ["npx", "prisma", "db", "push"]
restart: "no"
- Pourquoi ? Nous utilisons
prisma db pushau lieu demigrate deploycar nous sommes souvent en mode prototypage pour le schéma du blog. - Workflow :
- Le conteneur
migratedémarre. - Il pousse le schéma vers MariaDB.
- Il s'arrête avec le code 0.
- Le conteneur
webattend quemigratese termine avec succès avant de démarrer.
- Le conteneur
Variables d'environnement
| Variable | Description |
|---|---|
DATABASE_URL | Chaîne de connexion MariaDB (mysql://...) |
SMTP_HOST | Serveur mail (ex. smtp.gmail.com) |
SMTP_USER | Adresse email pour l'envoi des formulaires |
NEXT_PUBLIC_ACKEE_DOMAIN | URL de l'instance Ackee |