Comme vous pouvez le voir dans le docker-compose.yml
à la racine, le projet repose sur cinq conteneurs docker.
Fort heureusement, un fichier Makefile (ne fonctionne que sous Linux) contenant les commandes principales à utiliser pour travailler sur le projet est aussi présent.
Pour les utilisateurs windows : il vous faut installer WSL, cependant, nous vous recommandons d'installer docker Desktop d'abord, étant donné qu'il intègre automatiquement une WSL lors de son installation.
Vous pouvez retrouver la procédure pour installer docker ici : https://docs.docker.com/get-started/get-docker/
Cette installation permettra d'exécuter les commandes définies dans le Makefile. Si vous êtes sur windows, assurez-vous de lancer ces commandes depuis votre terminal WSL.
La commande make est théoriquement disponible dans toutes les distributions Linux. Certaines viennent même avec la commande préinstallée.
Si votre distribution n'en dispose pas, voici un exemple expliquant comment l'installer pour les distributions basées sur Debian :
sudo apt-get install make
NOTE :
Pour les utilisateurs windows, si vous conservez la distribution par défaut livrée avec docker, sachez qu'il s'agit d'Ubuntu. Par conséquent, la commande ci-dessus devrait fonctionner, pour peu que vous l'exécutiez dans le bon terminal.
Une fois que les deux outils nécessaires sont installés sur votre machine, vous pouvez enfin démarrer le programme en utilisant une des deux commandes :
make start
ou
make run
Elles font toutes les deux la même chose, à l'exception près que la commande run
vous détache directement de la sortie des conteneurs docker.
Cela est particulièrement pratique pour exécuter d'autres commandes depuis le même terminal dans lequel vous avez lancé la première commande.
Nous sommes presques rendus ! Mais avant de tester l'application, pensez à exécuter les migrations de la base de données jusqu'à la version la plus récente.
Pour ce faire, vous allez devoir ouvrir une session bash sur le conteneur web
, dont il est question :
make wsh
Et ensuite exécuter cette commande. Elle exécutera à son tour toutes les migrations qui sont répertoriées :
php bin/console doctrine:migrations:migrate
Et voilà, votre application est désormais 100% opérationnelle.
NOTE :
Pour aller plus vite,doctrine:migrations:migrate
peut être résumé àd:m:m
!
Si vous n'avez pas l'outil docker Desktop (ou n'importe quel autre outil pour vous permettre de le faire graphiquement), vous pouvez utiliser cette commande afin d'arrêter les conteneurs :
make stop
Une fois l'application démarrée, vous pouvez la voir en action en suivant les URL :
- http://localhost:8090/api/openapi.json : Redirige vers le fichier JSON contenant la documentation OpenAPI du serveur backend.
- http://localhost:8091 : Le frontend de l'application.
- http://localhost:8094 : L'interface graphique pour la documentation OpenAPI du backend (peut être utilisée pour envoyer de requêtes au backend).
- http://localhost:8095 : L'intercepteur de mails (mailcatcher). C'est à cet endroit que les mails envoyés par l'application apparaîtront.
Si vous souhaitez ajouter la base de données à votre IDE, vous pouvez utiliser la chaîne de connexion suivante :
mysql://development-processes-user:development-processes-user-password@localhost:8096/development-processes-db?charset=utf8mb4
Si vous rencontrez des problèmes de droits avec les fichiers du projet, vous pouvez utiliser la commande :
make owner
qui donnera à votre système la propriété sur tous les fichiers et dossiers sous development-processes-php
et development-processes-vue
.
Pour exécuter les tests de l'application, vous avez trois possibilités :
- Les tests pour le frontend :
make tests-front
- Les tests pour le backend :
make tests-back
- Tous les tests en même temps :
make tests