Retengr

Workshop CI/CD – Docker, Gitlab et Kubernetes

Par Retengr

Objectifs

  • Comprendre le cycle de vie d’un conteneur
  • Paramétrer le fonctionnement d’un conteneur
  • Créer et publier ses propres images
  • Automatiser la création et le déploiement au sein d’une usine logicielle (ici avec Gitlab)
  • Architecture Kubernetes
  • Déployer une application dans Kubernetes
  • Utiliser un cluster Kubernetes
  • Packagez et déployez vos applications avec Helm

Programme

Présentation
  • LXC sur Linux : l’ancêtre de docker
  • La notion de conteneur
  • Installer Docker
  • Définir « docker host » et « docker daemon »
Utiliser Docker
  • Utiliser une image docker
  • Démarrer et paramétrer un conteneur
  • Volume et réseau : connecter votre conteneur au monde extérieur
  • Exploitation d’un conteneur : logs, connexion au conteneur …
  • Exercice : Création d’une application de collecte de données avec des conteneurs. Utilisation de deux conteneurs : NIFI pour collecter, MongoDB pour stocker.
Créer et publier sa propre image
  • Présentation : créer l’image adaptée à ses besoins
  • Dockerfile : le fichier qui décrit votre nouvelle image
  • Choisir une image de base pour sa propre image
  • Les différentes directives de création de l’image : RUN, COPY, WORKDIR, ENTRY POINT, EXPOSE, …
  • Publication dans un référentiel d’images docker (docker hub)
  • Exercice : Création d’une image NIFI pré-paramétrée pour nos besoins
Gitlab : un outil de CI
  • Git un outil de gestion de configuration du code source de vos applications
  • Différence entre Git et Github, Gitlab ou Bitbucket
  • Travail collaboratif : les branches dans git
    Pull request : merger le travail des différents collaborateurs
  • Définir un Gitflow d’entreprise
  • Les acteurs du build : makefile, maven, dockerfile, …
  • Automatiser le build dans une chaine d’intégration continue
  • Automatisation de la construction et publication d’une image sous gitlab (ou autre outil de CI)
Kubernetes
  • Présentation de Kubernetes : un orchestrateur de conteneur
  • Kubernetes : déploiement sur un cloud public (AKS, EKS, GCP) ou cloud privé
  • Architecture de Kubernetes kubectl : la ligne de commande de Kubernetes
  • Un pod : l’unité de base manipulable dans Kubernetes
  • Déploiement de conteneurs dans un cluster Kubernetes
  • Définition d’un service
  • La notion de volume pour gérer les données persistantes
  • Ingress : Exposer vos services à l’extérieur du cluster
Exercice
  • Mise en place d’une application complète utilisant les composants logiciels suivants : NIFI, Kafka, Kafka connect, Elastic search, Kibana, Kafka Streaming.
  • Cette application collectera des données en temps réel sur internet, et mettra en place un mécanisme de dataviz pour les analyser en temps réels. L’ensemble de l’infrastructure sera déployé dans Kubernetes. Une explication suffisante de chacun de ces outils sera faîte pour mettre en place l’exercice

Pédagogie

La formation se passe en mode présentiel (face à face), et se compose de 80% de travaux pratiques (Mises en situation, débats, exercices).

Une évaluation quotidienne de l’acquisition des connaissances de la veille est effectuée.

Une synthèse est proposée en fin de formation. Un support de cours sera remis à chaque participant comprenant les slides sur la théorie, les exercices et travaux pratiques et les corrigés de ces derniers. Une évaluation à chaud sera proposée au stagiaire à la fin du cours.

Un support de cours sera remis à chaque participant comprenant les slides sur la théorie, les exercices et les corrigés de ces derniers. Une feuille d’émargement par demi-journée de présence est fournie, en fin de formation, ainsi qu’une attestation de formation si le stagiaire a bien assisté à la totalité de la session.

Formations de la même catégories (5)

Alter Way
Officielle Docker - Docker for Enterprise OperationsPar Alter Way

Partenaire officiel de Docker Inc, alter way propose la formation officielle Docker for Enterprise Operations, qui fournira aux stagiaires débutants une maîtrise de Docker sur les aspects sécurité, clustering, orchestration, microservices.

Cette formation officielle s'adresse aux utilisateurs ayant déjà une maîtrise de Docker et souhaitant approfondir leurs connaissances du gestionnaire de conteneurs virtuels en vue de déployer Docker Enterprise (avec licence de Docker).

Le rythme étant soutenu, il est indispensable que le stagiaire ait déjà pratiqué Docker ou qu'il ait suivi au préalable la formation officielle Docker pour débutants dispensée par alter way.

Les stagiaires recevront de la part de Docker Inc. une attestation officielle Docker à la fin de la formation.

La formation sera animée par Hervé Leclerc, CTO d'alter way. Certifié Docker, Hervé a travaillé sur la conception de l'offre d'hébergement Docker d'alter way et anime régulièrement des conférences sur le sujet (alter way's Digitalks, Azure Camp, Azure DevCamp, Ecoles).

Partenaire historique de Docker , alter way dispense les formations officielles Docker et propose un panel complet de services autour de Docker : conseil, déploiement, évolutions d'architectures existantes, hébergement et infogérance.

Alter Way a, à ce titre,reçu l'award "Docker service delivery partner of the year" décerné par Docker Inc à ses partenaires à la DockerCon Barcelona 2018.

SQLI Institut
Docker : mise en œuvrePar SQLI Institut
  • Comprendre et savoir mettre en oeuvre Docker, et les produits de l'ecosystème pour déployer des images tout en intégrant les contraintes de production.
M2i Formation
Kubernetes - Orchestrer ses conteneursPar M2i Formation
  • Comprendre les principes de l'orchestration de conteneurs Docker
  • Créer et mettre en oeuvre Kubernetes
  • Orchestrer des conteneurs Docker
  • Déployer des applications.
ENI SERVICE
Docker : Mise en oeuvre du déploiement d’applications en conteneurPar ENI SERVICE

Docker est une plate-forme de conteneurs logiciels virtualisés qui permet d'empaqueter des applications et leurs dépendances systèmes afin de les exécuter sur n'importe quel serveur Linux ou Windows. Grâce à sa liaison avec un serveur de versions distant, il devient aisé de maintenir une application et sa configuration système sur de multiples environnements.Cette formation vous permettra de vous familiariser avec les concepts de Docker et son utilisation dans votre environnement de travail quotidien. Cette formation s'appuie sur les concepts Docker pour Linux.Pour avoir un aperçu des possibilités offertes par les conteneurs Docker, vous pouvez visionner le replay de notre webinaire.

SQLI Institut
Docker : administration avancéePar SQLI Institut
  • Savoir configurer les fonctionnalités avancées de Docker :la sécurité, les configurations multi-hôtes, la création de registres privés, le provisionning de services dans le cloud, …