Formation Docker : Maîtriser Docker

Public admis

  • Salarié en Poste
  • Demandeur d'emploi
  • Entreprise
  • Etudiant

Financements

Eligible CPF Votre OPCO Financement personnel

Objectifs de la formation

Concrètement, à l'issue de ce cours Maîtriser Docker, les participants disposeront des connaissances et des compétences nécessaires pour :

  • Comprendre la place de Docker dans le nouveau paradigme du mouvement DevOps
  • Créer et administrer des conteneurs Docker (image, registre, conteneur…)
  • Construire ses propres images Docker et les déployer
  • Comprendre comment créer et déployer des applications multi-conteneurs
  • Comprendre le nouveau paradigme des applications Micro-services
  • Créer et déployer des applications Micro-services avec Docker-compose
  • Gérer la journalisation des conteneurs avec la suite ELK
  • Comprendre ce qu’est un pipeline de développement et d’intégration continue (CI, CD)
  • Comprendre l’apport d’un orchestrateur comme Kubernetes
  • Identifier les risques et challenges inhérents à Docker afin d’anticiper les bonnes solutions
  • Savoir gérer les problématiques de sécurité des conteneurs, connaître les bonnes pratiques à adopter
  • Les fonctions avancées de la construction d’image avec Dockerfile, Arguments, variables, sondes...
  • Développer et déployer des applications avancées multi-containers avec Docker Compose
  • Concepts d’orchestration de conteneurs
  • Comprendre le concept d’applications «Orchestrator-ready»
  • Comprendre l’architecture de Kubernetes : Les différents types et rôles des nœuds
  • Notion de pods, service, stockage et déploiements
  • Gérer le cycle de ses déploiements
  • Gérer les mises à jour des applications
  • Déploiement et partage des éléments de configuration
  • Comprendre les applications Stateless et Stateful
  • Comprendre les outils de l’écosystème Kubernetes
  • Déployer des applications complexes avec le manager Helm
  • Gérer le réseau avec le load balancer et les ingress traefik, nginx...
  • L’importance des services mesh avec Istio
  • L’importance des services des solutions de stockage
  • L’importance du monitoring de l’infrastructurelle et des applications

Le cours est découpé en plusieurs parties. Celles-ci pourront être réorganisées de manière différente en fonction du déroulement de la formation.

Cette formation "Maîtriser Docker" est une approche complète de Docker, composée de la formation "Docker : Créer et Administrer vos conteneurs virtuels d'applications avec Docker" (UDMA) suivie de la formation "Docker avancé : Déployer et gérer des hôtes Docker" (UDMB)

PLB CONSULTANT


Informatique et Management
Voir la fiche entreprise

Tarif

A partir de 2 695,00 €

Durée 5 jours (35h)
Modes
  • Centre
  • Entreprise
  • Distance
Sessions
Lieux Partout en France

PLB CONSULTANT


Informatique et Management
Voir la fiche

Tarif

A partir de 2 695,00 €

Durée 5 jours (35h)
Modes
  • Centre
  • Entreprise
  • Distance
Sessions
Lieux Partout en France

Description

En très peu de temps, Docker est devenu une plateforme incontournable que les développeurs et les administrateurs système utilisent pour le packaging, le déploiement et l'exécution d'applications.

Docker permet entre autres aux développeurs de créer des images, artefacts immutables contenant le code d’une application ainsi que l’ensemble des dépendances nécessaires pour la lancer. Une image est instanciée en un container, processus ayant sa propre vision du système et ses propres contraintes d’utilisation des ressources. Ces images sont portables et peuvent être déployées et instanciées sur tous les environnements (intégration, QA, production).

Docker facilite notamment l'automatisation des opérations de déploiement, permet d'isoler les applications et d'optimiser l'utilisation de ressources.

Programme

Jour 1

Présentation de Docker

Les différents niveaux de virtualisation (système, applicatif)
Avantages de la virtualisation applicative
DevOps, des nouveaux outils et de nouvelles habitudes de travail
Comprendre l’Infrastructure As Code 
Vocabulaire autour du paysage informatique (Web Services, Micro-services, SOA, CI/CD, etc.)
La place de Docker et des conteneurs dans ce paysage
Travaux pratiquesSéquence de travail type d’un utilisateur de Docker pour bien comprendre les fonctionnalités apportées par Docker et en quoi il change les habitudes techniques et organisationnelles des équipes

Architecture de Docker

Client et moteur Docker
Les composants de base : images, registry, container 
Comprendre le daemon Docker et l’architecture client/serveur, l’API Docker
Les éditions de Docker
Implémentation sous Linux et Windows
La gestion des images Docker
Kernel, images et conteneurs
Ecosystème Docker (Docker Hub, Docker registry, Dockerfile, Docker Compose)
Docker Desktop
Docker et le Cloud
Travaux pratiquesInstallation de Docker Community Edition
Initiation aux conteneurs
Présentation d'un conteneur
Création d'une image
Exploitation applicative standard
Exploitation applicative du stockage

Images et conteneurs Docker

Liens entre image et conteneur
Qu’est-ce qu’un registry de conteneurs ?
L’exemple de Docker Hub
La registry privée
Nomenclature d’appels de conteneurs
Savoir télécharger (pull) des images, comprendre le nommage des images Docker
Créer un compte sur le Hub Docker et pousser (push) des images via la CLI Docker
Comprendre l’historique des images
Administrer les images en local, nommage, suppression, le cache
Principes d’instanciation d’un conteneur
Créer une image à partir d’un conteneur
Gestion de la console au quotidien
Travaux pratiquesNavigation dans le Docker Hub
Administrer ses images, pull, tag, push, history...
Créer un compte sur le registre
Envoyer des images dans le registre Docker (Hub Docker)
Créer un registre privé
Administrer ses conteneurs avec les options du run
Se connecter sur les conteneurs
Installation d’applications Web dans un conteneur et création d’images à partir de ce dernier

Docker et le réseau

Comment exposer ses images vers l’extérieur ?
Comprendre le réseau Docker
La notion de publication de port
Publier des ports avec publish
Créer des réseaux Docker, dchp, dns
Communications inter conteneurs 
Travaux pratiquesTests de l’exposition de nos images selon différents modes de configuration du réseau (bridge, hôte, join, link)

Les volumes de données avec Docker

Le problème de la persistance dans les conteneurs
Gestion du stockage
Bien maîtriser les volumes Docker, bind, files, volumes distants 
Identification des volumes orphelins
Travaux pratiquesCréer des volumes Docker
Associer des systèmes de fichiers avec vos conteneurs (local et distant)
Jour 2

Dockerfile

Comprendre la construction d’image avec le Dockerfile
Les instructions du Dockerfile :FROM, RUN CMD, ENTRYPOINT
Les bonnes pratiques (nettoyage, lancement des services, sécurité…)
Déployer son propre registre Docker
Présentation d’Harbor
Travaux pratiquesCréation d'une image à l'aide de Dockerfile
Optimisation de la création des images
Créer une image MongoDB à l’aide de la description GitHub
Création d’une image LAMP
Construction, déploiement d’un registre Docker via Dockerfile
Identification et push d’images personnalisé sur le registre

Application multi-conteneurs (docker-compose)

Comprendre l’orchestration des Micro services avec docker-compose
Le format yaml de fichier défini par docker-compose
La commande docker-compose
Mon premier service
Le réseau avec docker-compose
Les volumes de données avec docker-compose
Les dépendances entre services
Mise à jour des services 
Travaux pratiquesDéploiement d’une application Web, PHP, SQL, hautement disponible avec HAProxy, Apache...
Déploiement d’une stack de journalisation avec la suite ELK (Elasticsearch, Logstash, Kibana)
Configurer la journalisation avec Docker-compose

Fonctions avancées de docker-compose

Construire des images avec docker-compose, les contextes
Rendre dynamiques ses fichiers compose avec les variables et le fichier .env
Les sondes de vitalité et de disponibilité
Comprendre les labels
Configuration avancée des volumes
Le Rollback et update des services
Travaux pratiquesCréer un environnement complexe avec le fichier. env et les variables
Créer des sondes vitalité health check
Créer des labels pour échanger avec le démon Docker et d’autres applications Docker
Gérer ses mises à jour
Jour 3

Sécurité

Éléments à risque : noyau, conteneurs, Docker daemon...
Quelques bonnes pratiques d’administration
Scan de vulnérabilité des images
Les bonnes pratiques dans le Dockerfile
La capabilities Linux/Syscall
Travaux pratiquesSécurisation des images et tests d’accès

Exploitation de docker au quotidien

Les plugins Docker
Administration des plugins
Principe de la copie sur écriture (CoW)
Intégration à Docker de la copie sur écriture
Les pilotes de stockage Docker (AUFS, OverlayFS, DeviceMapper…)
Configuration du daemon Docker
Démarrage automatique des services
Gestion des logs
Restriction sur les ressources
Protection du contenu d’un conteneur
Bonnes pratiques de sécurité
Travaux PratiquesImplémentation d’un plugin de stockage
Redémarrage automatique
Déploiement d’un frontal web d’administration

Introduction à l’intégration continue avec GitLab/Jenkins

Retour sur l’automatisation de sa chaine de production
Construire et pousser des images Docker avec Jenkins et GitLab
Le Dockerfile et Jenkinsfile
Travaux pratiquesMise en place d’un pipeline d’intégration continue avec GitLab et Jenkins

Introduction à l’orchestration de conteneurs

Limites de Docker seul et apport d’un orchestrateur (haute disponibilité, scalabilité…)
Comprendre l’architecture d’un orchestrateur de conteneurs
Dialogue entre les nœuds d’un cluster
L'exemple de Kubernetes
Le vocabulaire de Kubernetes (pods, service…)
Comprendre les applications stateless et statefull
Travaux PratiquesDémonstration du formateur pour comprendre comment s’exécutent les images Docker dans un contexte d’orchestration et la plus-value concrète d’un outil comme Kubernetes pour les développeurs (déploiement d’une application LAMP à haute disponibilité par exemple)

Jour 4

La sécurité avec Docker

Éléments à risque : noyau, conteneurs, Docker daemon...
Quelques bonnes pratiques d’administration
Scan de vulnérabilité des images
Utilisation d’Harbor pour sécuriser ses images
Les bonnes pratiques dans le Dockerfile
La capability Linux/SysCall

Dockerfile : Build d’images avancées

Présentation d’un environnement de build
Les variables du fichier .env
Les instructions : HEATCHECK...
La construction multi-stage
Rendre dynamiques ses builds avec les arguments et variables
Le DockerIgnore
Travaux pratiques :Déploiement d’un environnement de construction d’image destiné à la production

Fonctions avancés de Docker Compose

Retour sur Docker Compose
Construire des images avec Docker Compose, les contextes
Rendre dynamiques ses fichiers Compose avec les variables et le fichier .env
Configuration avancée du réseau
Configuration avancée des volumes
Gérer les logs Docker avec ELK
Travaux pratiques :Créer un environnement complexes et dynamique avec le fichier .env et les variables
Configurer un réseau
Configurer des volumes distants NFS...
Mise en œuvre d’une stack de journalisation avec la suite Elastic, Kibana...

Jour 5

Orchestration des conteneurs

Concepts d’orchestration des conteneurs

Comprendre l’orchestration, la haute disponibilité, la mise à l’échelle des applications
Comprendre l’architecture d’un orchestrateur de conteneurs
Le manifest YAML
La notion de pods, de service, de stockage et de déploiements
Gérer les sondes, les ressources dans les pods
Comprendre les applications Stateless et Stateful
Travaux pratiques :Créer nos premiers pods
Gérer les ressources dans les pods
Gérer des sondes d’activité des pods

Le déploiement d’applications

Comprendre la ressource Kubernetes «deployment»
Comprendre la réplication des pods et leur cycle de vie
Comprendre et savoir gérer les mises à jour des deployments, rollouts…
Travaux pratiques :Créer et déployer notre déploiement d’applications
Administrer les ressources dans les pods
Créer des sondes d’activité dans les pods

La communication réseaux

Comprendre la ressource Service
Comprendre et savoir exposer nos applications aux utilisateurs
Comprendre et savoir faire communiquer nos applications entre elles
Travaux pratiques :Exposer des applications par ports - NodePort
Exposer des applications par IP – LoadBalancer
Créer un réseau interne pour nos applications – Cluster IP
Exposer ses applications via des URLs avec les Ingress

Le stockage pour nos applications

Comprendre la gestion des Volumes avec Kubernetes, PV, PVC...
Savoir fournir du stockage dynamique a nos déploiements
Connecter le stockage avec les pods
Travaux pratiques :Créer une demande de stockage dynamique
Associer le stockage avec ses applications

Le déploiement d’applications avec états

Comprendre la ressource Kubernetes «StatefulSets»
Comprendre le déploiement d’applications avec états
Exemple d’une base de données Postgre clusterisée

Les projets de l’écosystème Kubernetes

Revue de différents projets développés autour de Kubernetes via la Cloud Native Computing Foundation
(Containerd, Istio, Rook,  Argo CD, Harbor, Fluentd, Prometheus...)
Packaging et déploiements d’application complexes avec Helm
Comprendre l’implication des services Mesh, les réseaux maillés avec Istio
Études des solutions de stockage pour Kubernetes, cephfs, Rook
Étude de cas du monitoring avec Prometheus et Grafana
Travaux pratiques :Déployer des application complexe avec le gestionnaire Helm
Mettre en œuvre le réseau maillé avec Istio

Prérequis

Des connaissances de base de l’administration Linux et du langage Shell sont nécessaires pour suivre cette formation dans de bonnes conditions.

Public

Le cours s'adresse aux administrateurs, architectes ou développeurs d'applications voulant apprendre à gérer les problématiques d'exploitation et optimiser leurs bonnes pratiques.

Ces formations pourraient vous intéresser

Objectifs de la formation

À l'issue de cette fomation Comprendre le Cloud laaS, OpenStack et Docker, vous aurez acquis les connaissances et les compétences nécessaires pour :

  • Comprendre le fonctionnement du cloud, son intérêt et son vocabulaire
  • Connaître les solutions de cloud public et privé du marché
  • Connaître le fonctionnement du projet OpenStack et ses possibilités
  • Déployer un OpenStack de test
  • Manipuler l'API (Application Programming Interface), la CLI (Command Line Interface) et le Dashboard
  • Identifier ce qui est compatible avec la philosophie cloud
  • Savoir exploier l’IaaS
  • Comprendre les principes des conteneurs Linux
  • Connaître l'écosystème autour de Docker
  • Construire une image Docker, l'exécuter et la supprimer
  • Construire une application "Dockerisée"
  • Déployer des conteneurs avec les outils adaptés
  • Comprendre les systèmes de clustering pour Docker.
Tarif

A partir de 2 695,00 €

Durée

5j / 35h

Modes
  • Centre
  • Entreprise
  • Distance

Objectifs de la formation

  • Installer Docker sous Linux et Windows
  • Travailler avec des conteneurs et images
  • Construire des images et les publier sur le Docker Hub
  • Configurer le réseau et les volumes
  • Orchestrer Docker avec Swarm
Tarif

A partir de 990,00 €

Durée

23 heures

Modes
  • Distance

Objectifs de la formation

  • Installer des serveurs Core et Nano
  • Planifier des stratégies de migration et mise à niveau de serveurs
  • Déployer des images avec MDT et WDS
  • Décrire les différentes solutions de stockage d'entreprise et les mettre en œuvre
  • Implémenter et gérer les espaces de stockage et la déduplication de données
  • Installer et configurer Hyper-V
  • Créer et gérer des machines virtuelles
  • Gérer les switches virtuels
  • Déployer, configurer et gérer des containers Windows et Hyper-V
  • Mettre en œuvre et gérer un cluster à basculement
  • Déployer des machines virtuelles en cluster
  • Maintenir et surveiller un environnement de serveurs
Tarif

A partir de 2 950,00 €

Durée

5j / 35h

Modes
  • Centre
  • Entreprise
  • Distance

Formation Kubeflow

Proposé par Sparks

Objectifs de la formation

  • Configurer un environnement Kubeflow
  • Connaître les options de déploiement
  • Construire et déployer un modèle de Machine Learning sur Kubeflow
  • Créer et exécuter un pipeline ML avec Kubeflow Pipelines
Tarif

A partir de 1 500,00 €

Durée

2 jours

Modes
  • Centre
  • Entreprise
  • Distance

Formation Docker

Proposé par Sparks

Objectifs de la formation

  • Installer et prendre en main Docker
  • Comprendre les images et les conteneurs
  • Maîtriser la gestion des données et les volumes
  • Gérer les réseaux sur Docker
  • Utiliser Docker Compose pour les applications multi-conteneurs
  • Utiliser Docker Machin et Docker Swarm pour le clustering et l'orchestration
  • Connaître les bonnes pratiques d'utilisation de Docker en production
Tarif

A partir de 2 100,00 €

Durée

3 jours

Modes
  • Centre
  • Entreprise
  • Distance

Objectifs de la formation

À l'issue de cette formation Migration OVH Bonnes Pratiques, vous aurez acquis les connaissances et les compétences nécessaires pour :

  • Savoir rappeler les concepts fondamentaux du Cloud Computing et de la virtualisation (notamment les avantages commerciaux du Cloud Computing et les risques associés)
  • Maîtriser les services de OVH et disposer d'une analyse comparative des différentes options disponibles (serveurs, stockage et BdD)
  • Connaître les contraintes des architectures dans le Cloud
  • Être capable de concevoir des solutions intégrant des fonctions de sécurité, d'authentification et d'autorisation avec OVH
  • Savoir identifier les procédures de migration vers le cloud et les bonnes pratiques associées
  • Mettre en œuvre des solutions OVH tout en optimisant les coûts
Tarif

A partir de 1 580,00 €

Durée

2j / 14h

Modes
  • Centre
  • Entreprise
  • Distance

Objectifs de la formation

  • Appréhender le positionnement de Docker et des conteneurs
  • Mettre en œuvre la solution ainsi que les produits de l'écosystème pour déployer rapidement des applications à l'aide de conteneurs
  • Manipuler l'interface en ligne de commande de Docker pour créer des conteneurs
  • Administrer des conteneurs
  • Identifier les risques et challenges inhérents à Docker afin d’anticiper les bonnes solutions
Tarif

A partir de 1 800,00 €

Durée

3j / 21h

Modes
  • Centre
  • Entreprise
  • Distance

Objectifs de la formation

  • Pendant la formation, le formateur évalue la progression pédagogique des participants via des QCM, des mises en situation et des travaux pratiques. Les participants passent un test de positionnement avant et après la formation pour valider leurs compétences acquises.
Tarif

Contacter l'organisme

Durée

2 jours (14 heures)

Modes
  • Entreprise
  • Distance
  • Centre

Objectifs de la formation

À l'issue de cette formation Outils DevOps, vous aurez acquis les connaissances et compétences nécessaires pour :

  • Connaître la chaîne CI/CD dans toute sa longueur
  • Savoir manipuler les outils et services modernes
  • Comprendre la complémentarité des outils DevOps
  • Être capable de discuter des impacts sur les organisations informatiques
Tarif

A partir de 1 860,00 €

Durée

2j / 14h

Modes
  • Centre
  • Entreprise
  • Distance

Objectifs de la formation

  • Pendant la formation, le formateur évalue la progression pédagogique des participants via des QCM, des mises en situation et des travaux pratiques. Les participants passent un test de positionnement avant et après la formation pour valider leurs compétences acquises.
Tarif

Contacter l'organisme

Durée

3 jours (21 heures)

Modes
  • Entreprise
  • Distance
  • Centre

Je cherche à faire...