Installation et configuration¶
Prérequis¶
- PHP 8.1 ou supérieur
- Composer
- MySQL
- Extensions PHP requises par Composer, notamment PDO MySQL, GD, Intl, Sodium et Zip
Installation locale¶
composer install
php bin/console doctrine:database:create
php bin/console doctrine:migrations:migrate
php bin/console cache:clear
Lancer ensuite l’application avec Symfony CLI, Apache ou PHP-FPM selon l’environnement.
Variables d’environnement¶
| Variable | Usage |
|---|---|
APP_ENV, APP_SECRET |
environnement et secret Symfony |
DATABASE_URL |
connexion MySQL |
JWT_SECRET_KEY, JWT_PUBLIC_KEY, JWT_PASSPHRASE |
signature JWT |
CORS_ALLOW_ORIGIN |
origines API autorisées |
MAILER_DSN, MAILER_FROM |
transport et expéditeur email |
BUSINESS_API_URL |
URL du backend Business |
SYSTEM_API_KEY |
authentification système entre backends |
DOCS_HOST |
host Traefik du portail docs |
GEMINI_API_KEY |
génération de contenu |
SMS_API_BASE_URL |
base MySMS, actuellement /api/v1 |
SMS_API_KEY |
jeton Bearer MySMS |
SMS_SENDER_NAME |
nom d’expéditeur SMS |
LOCK_DSN |
verrous Symfony |
Les secrets doivent être placés dans .env.local, un secret manager ou les variables du runtime. Ne jamais committer une clé réelle.
JWT¶
php bin/console lexik:jwt:generate-keypair
Les chemins de clés sont configurés dans config/packages/lexik_jwt_authentication.yaml.
Vérifications¶
php bin/console lint:yaml config
php bin/console lint:container
php bin/console doctrine:schema:validate