acquisitions des competences
L'objectif de cette documentation est la montée en competence sur les technolgies du Devops.
Sommaire
1- Docker
Ce qu'il faut savoir
la conteneurisation d'un application, consiste a exécuter ce dernier dans une image docker. En d'autre terme pour conteneuriser une application tu dois savoir comment cette application s'exécute sans être dans un conteneur.
Une fois que tu as relever ce process de lancement, tu le transcris étape par étape dans un dockerfile. et la dernière commande du dockerfile doit être celle qui lance l'application dockeriser.
- étape 1: trouver le langage de programmation de l'application
- étape 2: executer l'application dans sa machine en notant le chaque etape.
- étape 3: rediger son dockerfile
- étape 4: tester l'image obtenu s'il correspond exactement au meme resultat qu' a l'étape 2
Pour aller plus loin, voici des articles complementaire pour une comprehension plus rapide de la technologie docker
Mise en pratique
j'ai mis en place ce repo gitlab: https://gitlab.com/team-teranga/devops/testdocker.git c'est sur ce repo que nous ferons ta monté en compétence sur les outils devops. clique ici pour acceder a la branche develop du repo
Objectifs
- Installer Docker
- Conteneuriser l'application
- Envoyer l'image obtenu dans le registre de container.
2- Jnskins
Ce qu'il faut savoir
Jenkins est un outil open source de serveur d'automatisation. Il aide à automatiser les parties du développement logiciel liées au build, aux tests et au déploiement, et facilite l'intégration continue et la livraison continue
Pour aller plus loin, voici des articles complementaire pour une comprehension plus rapide de la technologie Jenkins
Mise en pratique
installer un serveur d'intégration et de deploiement continu (Jenkins) et mettre en place un pipeline sur le projet precedement conteneurisé. lien du repo
Objectifs
- Installer Jenkins en utilisant Docker.
- Assurez-vous que les volumes de votre serveur Jenkins soit persister.
- Mettre en place un pipeline CI/CD contenant les étapes suivantes: Build, Test, Conteneurisation,
3- Kubernetes
Ce qu'il faut savoir
Kubernetes est un système open source qui vise à fournir une « plate-forme permettant d'automatiser le déploiement, la montée en charge et la mise en œuvre de conteneurs d'application sur des grappes de serveurs ».
Pour aller plus loin, voici des articles complementaire pour une comprehension plus rapide de la technologie Kubernetes
- Documentaton officielle
- Chaine youtube xavki - La playlist Kubernetes
- Apprendre kubernetes - blog devopssec
Mise en pratique
installer un cluster kubernetes composé d'un master et de deux workers.
Objectifs
- Installation d'un cluster kubernetes
- Deployer dans le cluster kubernetes l'application conteneurisé plus haut