Principes de déploiement
Prérequis
Des ressources suffisantes comme indiqué au chapitre précédent pour faire fonctionner la solution.
Une clé de déploiement valide pour se logger au registre docker Adobis, afin de récupérer les images docker DataChain ©.
Déploiement
Le déploiement de l’application se fait au moyen d’un fichier docker-compose, qui va permettre de configurer les modules à déployer, ainsi que leur paramétrage.
Nous fournissons dans les chapitres suivants des exemples de déploiement, permettant ainsi de déployer la solution dans la configuration la mieux adaptée à vos besoins.
Contenu des exemples
Les exemples sont téléchargeables au format zip.
Chaque exemple est composé a minima :
-
D’un répertoire config qui contient la configuration utilisée pour l’exemple,
-
D’un repertoire scripts qui contient les scripts de démarrage, d’arrêt ou d’insertion d’utilisateur d’initialisation (scripts minimaux),
-
D’un répertoire par stack docker mise en place dans le cadre de l’exemple (ex : datachain, keycloak, etc.).
Trois scripts sont systématiquement présents :
-
up.sh qui permet de démarrer et prend comme paramètre
-
paramètre -s (pour le nom de la stack) : exemple, depuis un répertoire 0X.exemple, qui contient une stack datachain :
-
$ bash scripts/up.sh -s datachain
-
paramètre -d (pour afficher le fichier docker-compose qui sera réellement utilisé par docker stack)
-
down.sh qui permet d’arrêter et prend comme paramètre
-
-
paramètre -s (pour le nom de la stack) : exemple, depuis un répertoire 0X.exemple, qui contient une stack datachain :
$ bash scripts/down.sh -s datachain
-
insert_first_admin.sh qui d’insérer un premier utilisateur administrateur datachain (admin/changeIt) : exemple, lorsque la stack datachain a été démarrée, depuis un répertoire 0X.exemple :
$ bash scripts/insert_first_admin.sh
De manière générale, pour les stacks, la liste des fichiers sera la suivante :
-
docker-compose.yml : Le descripteur de déploiement docker swarm pour la stack
-
un ou plusieurs fichiers env :
-
backend.env : configuration minimale du service backend
-
spark.env : configuration minimale spark
-
web_ui.env : configuration minimale de la web-ui
-
keycloak.env : configuration minimale keycloak
-