Création d’un nouveau microservice¶
Points à évaluer avant de créer son microservice¶
- À quel niveau s’intégrera mon microservice dans l’architecture de l’application Zéphir ?
- Quelles seront les dépendances fonctionnelles de mon microservice ?
- Mon microservice sera t-il amené à fonctionner en mode multi-instances ?
Créer l’arborescence du microservice¶
Un script d’aide a été créé afin de faciliter la mise en place de nouveaux microservices:
./script/new-service <nom_du_service>
Si aucun service utilisant ce nom n’existe, le répertoire services/<nom_microservice>
sera créé avec son Dockerfile.
Rôle du répertoire container-start.d¶
Dans la structure par défaut proposée par le script de génération, le répertoire container-stard.d
comprend l’ensemble des scripts exécutés au démarrage du conteneur.
Ces scripts sont lancés par la commande run-parts
dans le point d’entrée /docker-entrypoint.sh
.
Partage de fichiers entre les microservices¶
Certains microservices seront amenés à utiliser des fichiers communs (par exemple des scripts d’attente de disponibilité d’autres services). Le répertoire services/common
est dédié à accueillir ces fichiers.
L’utilisation de ce répertoire nécessite la modification du fichier docker-compose.dev.yml
et la modification des chemins dans le fichier Dockerfile
. Voir la section services.api-bridge.build
du fichier docker-compose.dev.yml
pour un exemple.