Mise en place d'un pipeline CI/CD automatisé pour une application Spring Boot avec GitHub Actions et Docker.
Conception d'un pipeline CI/CD automatisant les tests, la construction, l'optimisation, l'analyse de sécurité et le déploiement d'une application Spring Boot dans des environnements de staging et de production.
Contexte & objectif
L'objectif de ce projet est de mettre en place une chaîne CI/CD permettant d'automatiser l'ensemble du cycle de livraison d'une application Spring Boot, depuis l'intégration du code jusqu'à son déploiement. La solution repose sur GitHub Actions et Docker afin de garantir des déploiements reproductibles, sécurisés et fiables, tout en réduisant les interventions manuelles et les risques d'erreurs.
Mon rôle
Conception, configuration et mise en œuvre du pipeline CI/CD, optimisation des images Docker et automatisation des déploiements.
Réalisations
- Conception d'un pipeline CI/CD avec GitHub Actions.
- Automatisation des tests applicatifs avec Maven.
- Optimisation de l'image Docker : réduction de 331 MB à 98 MB.
- Automatisation du build et du push des images sur Docker Hub.
- Intégration de Trivy pour l'analyse des vulnérabilités.
- Mise en place d'un environnement de staging sur le port 8081.
- Automatisation du déploiement en production sur le port 8080.
- Configuration des déclencheurs selon les branches develop et main.
- Mise en place d'un mécanisme de rollback automatique en cas d'échec.
Résultats
Mise en place d'un pipeline CI/CD automatisé couvrant les tests, la construction, le scan de sécurité et le déploiement en staging et production. Réduction de la taille de l'image Docker de 331 MB à 98 MB, soit environ 70 % de réduction. Automatisation du processus de livraison et amélioration de la fiabilité des déploiements. (déclaré par le talent)