
 
			
						
				Prérequis
Les participants doivent avoir des connaissances en développement.
Objectifs
- Comprendre l’implication de DevOps dans le développement des applications modernes.
 
- Comprendre les concepts de CI/CD.
 
- Comprendre les caractéristiques et concepts des microservices, API REST, cloud et stockage de données.
 
- Mettre en oeuvre un projet Git en mode collaboratif.
 
- Savoir containeuriser les applications dans des images Docker.
 
- Comprendre le déploiement et l’orchestration des conteneurs sur un cluster.
 
- Découvrir le fonctionnement et l’architecture de Kubernetes
 
- Savoir initialiser un cluster sous Kebernetes.
 
- Savoir gérer les objets et les contrôleurs Kubernetes.
 
- Identifier les étapes de l’intégration continue
 
- Comprendre l’architecture et le fonctionnement de Jenkins
 
- Savoir installer et configurer Jenkins.
 
- Savoir créer des jobs avec Jenkins.
 
- Comprendre le fonctionnement des outils SonarQube, Maven et Nexus.
 
- Mise en oeuvre d’un projet d’intégration continue.
 
Programme
1. Présentation de DevOps
- Introduction à DevOps
 
- Qu’est ce que DevOps
 
- Relation DevOps/Agile
 
- Aspect organisationnel
 
- Les pratiques DevOps
 
- Les outils DevOps
 
2. Développement des applications modernes
- L’architecture à microservices
 
- Les API REST
 
- Plateformes et concepts de données
 
- Les plateformes Cloud
 
- Les stratégies de déploiement
 
3.Gestion des version avec Git
- Apports et types des solutions de gestion des version.
 
- Structure des dépôts Git
 
- Les commandes de base Git
 
- Les branches Git
 
- Résolution de conflits
 
- Travaux pratiques : Gestion des dépôts Git.
 
4.Gestion des conteneurs avec Docker
- La technologie de conteneurisation
 
- Docker et les conteneurs
 
- Gestion des images docker
 
- Gestion des réseaux de conteneurs
 
- Gestion des volumes persistants.
 
5.Conteneurisation des applications
- Pourquoi et comment ?
 
- Etude des besoins de conteneurisation
 
- Les instructions Dockerfile
 
- Travaux pratiques : conteneurisation d’une application web.
 
6. Mise en place de pipelines CI/CD
- Jenkins et CI/CD
 
- Travaux pratiques : projet de CI/CD