presenter les outils utilisés pour ce projet, kubernetes comme platforme de
deploement, j'ai deployer kubernetes localement en utilisant le minikube qui est la
version local de kubernetes, j'ai utilisé jenkins pour faire le pipeline pour l'integration continue mon pipeline est composé de 4 stages, on commance par definir notre pod parsque notre agent est deployé sur kubernetes donc on doit le definir, Il y a 4 contenaires dans le pod, git , mave, docker et kubctl, le git pour faire le git checkout, maven pour builder, docker pour creer docker image pour qu'en suite le pusher dans le private registry nexus et enfin le deploiement sur kubernetes en utilisant kubectl
voici le docker file, on va avoir le base image de dockerhub, on va creer un
utilisateur, ici on a l'argument pour le jar file, on copie le jarfile dans l'image docker et enfin on lance le jar file en utilisant entrypoint et cmd
ensuite on deploi l'application sur kubernetes en utilisant ce ficher
dans le jenkins file on update l'image du deploiement en utilisant la commande set
image command puis en expose le deploiement en utilisant kubectl expose deployment voici maintenant nexus on a changer le dns dans le ficher hosts car tout les adresses ip des services contenairisé sont 192.168.99.100 dans nexus on a ajouté le repository docker hosted, et dans le pipeline on fait un push dans le private registery. ici dans le log on vois que le code a été testé par sonarqube qui est deployé en local car il consomme beaucoup de ressources .