Formation Docker : Maîtriser Docker


  • CRÉER ET ADMINISTRER DES CONTENEURS D'APPLICATIONS - DÉPLOYER, GÉRER ET SÉCURISER LES HÔTES DOCKER
REFERENCE
 
 
UDMC
DUREE
 
 
5 jours
TARIFS
 
 
2890 € HT
Niveau : Intermédiaire
Cours à distance: Possible
OBJECTIFS :
 

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, artefact immutable 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.

À l'issue de ce cours "Maîtriser Docker", les participants disposeront des connaissances et des compétences pour maîtriser la pratique de docker et son écosystème en conditions de production tout en étant capables d’anticiper les besoins.

Plus concrètement ils seront capables de :

  • Décrire les concepts de base de la technologie
  • Créer et déboguer des conteneurs en ligne de commande
  • Gérer des images personnalisées localement et à distance
  • Savoir administrer des conteneurs en production
  • Créer et déployer des applications multi-conteneurs
  • Mettre en place une architecture clusterisée et savoir l’orchestrer avec Docker Swarm
  • Identifier les risques et challenges inhérents à Docker afin d’anticiper les bonnes solutions
  • Utiliser Docker Machine pour déployer des hôtes Docker
  • Développer et déployer des applications multi-containers avec Docker Compose
  • Détailler les primitives utilisées dans un swarm
  • Mettre en place un cluster swarm  
  • Déployer des services et stack applicatives
  • Comprendre l’importance du quorum et la réplication des logs de Raft
  • Détailler les options de stockage
  • Mettre en place une stack de supervision
  • Comprendre les éléments de sécurité apportés par Docker  
  • Détailler les éléments de l’édition entrepris

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)

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.

PROGRAMME :
 

Introduction à Docker 

Les “quick wins” avec Docker
Les containers Linux
Les composants de base: namespaces et control groups
Historique de la plateforme
Les composants de l’écosystème : Docker Machine, Docker Compose, Docker Swarm...

Démonstration

Séquence de travail type d’un utilisateur de Docker pour bien comprendre les fonctionnalités apportées par Docker 

Premiers pas avec Docker 

Installer sur son environnement (Linux / MacOS / Windows)
Le docker daemon et l’architecture client/serveur
Présentation du Docker Hub, registre d’images Docker
Les commandes de base pour la gestion du cycle de vie d’un container
Supervision et debugging des containers

Travaux Pratiques :

Création de conteneurs selon différentes méthodes
Lancement de conteneurs avec passage d’arguments 

Les images Docker 

Union filesystem et Copy-On-Write
Création manuelle d’une nouvelle image
Création à partir d’un Dockerfile
Bonnes pratiques et performances (cache, écriture du dockerfile, images de base, arborescence recommandée, etc.)
Partage et utilisation des images (registre Docker)

Travaux Pratiques :

Création manuelle d’une nouvelle image
Installation d’un logiciel dans un conteneur
Création d’une nouvelle image à partir d’un fichier Dockerfile
Export / import d’image sous format fichier 

Les registres d’images 

Utilisation
Les registres Docker et autres registres de l’écosystème
Docker Hub / Docker registry / Docker Trusted Registry

Travaux Pratiques :

Déploiement et utilisation du registry officiel 

La persistance des données avec Docker 

Données non persistées par défaut
La notion de volume
Définition dans le Dockerfile ou à l'exécution
Bind-mount : montage d’un répertoire de l’hôte dans un container

Travaux Pratiques :

Étude des volumes sur des images officielles du Docker Hub
Utilisation des volumes dans des images personnalisées
Bind-mount dans un environnement de développement
Bind-mount de la socket unix du Docker daemon 

Mettre en œuvre une application multi-conteneurs 

Gérer l’interconnexion de plusieurs conteneurs avec Docker Compose
Le format de fichier défini par Docker Compose
Le binaire docker-compose
La notion de service
Communication entre les différents services
Modification du nombre d’instances d’un service

Travaux Pratiques :

Déploiement d’une application micro-services avec Docker Compose 

Intégration continue avec GitLab CI et Registry 

Considérations préliminaires
Mise en place du système
Gestion de la persistance

Travaux Pratiques :

Mise en place d’un pipeline d’intégration continue avec GitLab 

Orchestration avec Docker Swarm 

Présentation de Docker Swarm (node, service, stack, config, secret)
Les rôles manager et worker
Algorithme de consensus distribué Raft : réplication des logs et quorum
Le routing mesh
Les ports utilisés dans un swarm
Des outils de Monitoring (Netdata, Prometheus, ELK, etc.)
Montage d’un cluster Swarm
Déploiement global et atomique des services

Travaux Pratiques :

Mise en place d’un Swarm en local et sur un cloud provider
Déploiement de services
Déploiement d’une stack applicative contenant plusieurs services (load balancer, api, database)
Déploiement d'un cluster Ceph avec Rex-ray pour l’orchestration du stockage

Administration des conteneurs au quotidien 

Cycle de vie d’un conteneur
Analyse des logs
Le réseau dans Docker (standard, bridge, liens entre conteneurs, le réseau « physique », etc.)
Les volumes Docker

Travaux Pratiques :

Visite guidée d’environnement Docker en production
Automatisation du démarrage de conteneurs au boot
Affectation de ressources aux conteneurs
Partage de volumes

Docker Machine 

Présentation
Déploiement et utilisation d’hôtes Docker en local
Déploiement et utilisation d’hôtes Docker sur un cloud provider (AWS, DigitalOcean) 

Docker Compose 

Présentation
Le format de fichier Compose et son évolution
Le binaire docker-compose et son utilisation

Travaux Pratiques :

Déploiement d’applications avec Docker Compose 

Orchestration 

Présentation de Docker swarm (node, service, stack, config, secret)
Les rôles des nodes (manager, worker)
Algorithme de consensus distribué Raft : réplication des logs et quorum
Le routing mesh
Les ports utilisés dans un swarm

Travaux Pratiques :

Mise en place d’un Swarm sur un cloud provider
Déploiement d’un service
Déploiement d’une stack applicative
Utilisation des secrets 

Stockage 

La notion de volume
Utilisation et cas d’usage
File storage vs Block storage vs Object storage
Présentation de REX-Ray pour l’orchestration du stockage

Travaux Pratiques :

Mise en place d’un cluster Ceph
Exemple d’utilisation de REX-Ray 

Sécurité 

Les éléments de sécurité avec Docker
Isolation (namespaces) et limitation des ressources (cgroups)
Linux Security Modules
Capabilities / Seccomp
Scan de vulnérabilités
Content Trust
La sécurité dans un swarm 

Monitoring 

Gestion des logs
Exemple d’utilisation de Prometheus
Exemple d’utilisation de Netdata

Travaux pratiques:

Déploiement d’une stack Prometheus 

Docker Entreprise 

Présentation
Exemple de mise en place sur DigitalOcean
Démo de l’interface 

Des projets de l’écosystème Docker 

Revue de différents projets développés autour de Docker

TRAVAUX PRATIQUES :
 

La formation alterne théorie et travaux pratiques, dans une approche terrain. La théorie est réduite au minimum pour les parties qui n’ont pas d’application concrète dans l’exploitation au jour le jour.
Cependant, il est nécessaire de bien comprendre certains concepts pour justement mieux retenir comment les mettre en œuvre, au-delà de la simple « recette », et surtout d'évoluer avec recul dans son environnement technique au quotidien.

S'INSCRIRE À CETTE
FORMATION DOCKER
Cliquez sur une date pour vous inscrire
Information pratiques sur
LA FORMATION
Lieu de la formation Paris - LA DEFENSE
Nous contacter 01 43 34 90 94
CETTE FORMATION SUR-MESURE Ce cours est réalisable en intra-entreprise, dans vos locaux ou nos salles de cours CONTACTER NOTRE SERVICE INTRA
D'autres formations
SUR LE MÊME THÈME

3 j

 
L’utilisation des technologies Cloud, le développement et le déploiement des applications à la base de conteneurs sont des méthodes qui deviennent de plus en plus...

2 j

 

Virtualisation - Cloud - DevOps

Docker au service du Caas et du PaaS
Les conteneurs permettent aux plateformes Cloud de contourner les problèmes de dépendance logicielle. En effet, les conteneurs isolent les processus et agissent comme des briques de...

2 j

 

Virtualisation - Cloud - DevOps

Kubernetes mise en œuvre
Kubernetes est une plateforme open source permettant d’automatiser le déploiement, la montée en charge et la mise en œuvre de conteneurs d’applications. Elle...

2 j

 

Virtualisation - Cloud - DevOps

Docker : les Fondamentaux (cours officiel)
Cette formation officielle "Docker : les Fondamentaux" constitue la meilleure base pour l'utilisation de Docker en entreprise. Lors de ce cours, les participants vont apprendre les...
Plus de formations sur le même thème

Des questions ?

ON VOUS RAPPELLE

 

0

Formations
Informatique
et Management
en ligne à ce jour

+ 0

Stagiaires dans nos
salles de cours sur
l'année

0%

De participants
satisfaits ou très
satisfaits de nos
formations

0

Formateurs experts
validés PLB