43 lines
1.4 KiB
Markdown
43 lines
1.4 KiB
Markdown
# Déploiement
|
|
|
|
Ce document regroupe les informations utiles pour déployer l'application avec Docker en production.
|
|
|
|
## Déploiement Docker en production
|
|
|
|
### Commandes minimales
|
|
|
|
```bash
|
|
cp .env.example .env
|
|
# Définir APP_ENV=production, APP_URL, ADMIN_PASSWORD (12 caractères minimum) et la configuration SMTP
|
|
docker compose up -d --build
|
|
docker compose run --rm provision
|
|
```
|
|
|
|
Le provisionnement reste explicite : le runtime HTTP ne crée pas le schéma automatiquement. Il initialise aussi les réglages par défaut du blog via le module local `Site`.
|
|
|
|
## Données persistées
|
|
|
|
La stack Docker initialise `./data/` sur l'hôte :
|
|
|
|
```text
|
|
data/
|
|
├── public/ # assets compilés et médias persistés
|
|
├── database/ # base SQLite, lock de provisionnement et données runtime
|
|
└── var/ # cache Twig/HTMLPurifier et logs
|
|
```
|
|
|
|
## Reverse proxy et Caddy
|
|
|
|
Le Nginx de la stack Docker écoute sur `127.0.0.1:8888`. Pour exposer l'application publiquement, placez-le derrière un reverse proxy.
|
|
|
|
Exemple Caddy :
|
|
|
|
```caddy
|
|
https://app.exemple.com {
|
|
header Strict-Transport-Security max-age=31536000;
|
|
reverse_proxy localhost:8888
|
|
}
|
|
```
|
|
|
|
Pensez aussi à renseigner `APP_URL` avec l'URL publique, `ADMIN_HOME_PATH=/admin`, la configuration `MAIL_*` utilisée par la démonstration des notifications, et à adapter `TRUSTED_PROXIES` si l'application est servie derrière un autre proxy que le Nginx Docker fourni.
|