Production et déploiement
Préparez les valeurs d’environnement, laissez Lemonade utiliser son config cache de production et ne déployez que les artefacts nécessaires au runtime.
Le mode production commence par l’environnement
Le comportement en production est principalement piloté par APP_ENV, APP_DEBUG et des valeurs applicatives comme APP_BASE_URL. development et testing chargent la configuration directement depuis les sources. production, prod et les autres environnements non dédiés au développement se comportent comme des runtimes de production et peuvent utiliser le config cache compilé.
APP_ENV=production
APP_DEBUG=0
APP_BASE_URL=https://example.comFonctionnement du config cache compilé
Les fichiers YAML et les valeurs d’environnement résolues restent la source de vérité. En mode production, ConfigLoader essaie d’abord ApplicationConfigCache::loadIfFresh(). Si le cache manque, est obsolète ou qu’une source suivie a changé, le framework recharge la configuration et écrit automatiquement un nouveau cache. Des commandes séparées config:cache ou config:clear ne sont actuellement pas nécessaires.
production HTTP request or CLI command
-> ConfigLoader::loadApplication(...)
-> ApplicationConfigCache::loadIfFresh(...)
-> on cache miss: load source config and write a fresh compiled cacheRépertoires runtime inscriptibles
Une application déployée doit pouvoir écrire sous storage/ pour le config cache compilé, les logs, les sessions et les uploads lorsque ces fonctionnalités sont activées. Gardez les fichiers générés sous storage/, ne les commitez pas et ne les considérez pas comme source de vérité.
storage/cache/framework/config/
storage/logs/
storage/sessions/
storage/uploads/Checklist pratique de déploiement
- Avant le déploiement : préparez les valeurs d’environnement et les secrets, déployez la configuration YAML et générez un autoloader Composer optimisé.
- Pendant le déploiement : publiez le code et vérifiez les répertoires inscriptibles sous
storage/. - Après le déploiement : laissez la première request HTTP de production ou commande CLI créer le config cache, vérifiez les logs et lancez les workers
vendor/bin/lemonadeou commandes planifiées uniquement si l’application les utilise réellement. - Consultez Infrastructure pour le stockage runtime et Erreurs et débogage pour le diagnostic.
composer install --no-dev --optimize-autoloader
vendor/bin/lemonade about
# Optional when the app uses queue workers
vendor/bin/lemonade queue:install
vendor/bin/lemonade queue:work default database