Programme de formation Docker.
PDFIntroduction à cette formation Docker
Vue d’ensemble de la formation sur la conteneurisation Docker
Résumé des technologies de virtualisation
Avantages de Docker et des conteneurs par rapport aux machines virtuelles
Etat des lieux du marché (Kubernetes, Mesos…)
Terminologie générale et concepts centraux
Docker : un LinuX Containers (LXC) amélioré
Docker : son architecture (daemon, images, conteneurs, services, client…)
Docker : son écosystème (Docker Compose, Docker Cloud, Docker Machine…)
Docker Desktop, Docker Community Edition (Docker CE) et Docker Entreprise Edition (Docker EE)
Installer et prendre en main Docker
Installation et configuration de Docker
Installation de l’environnement de développement
Vérification de l’installation de Docker
Découvrir Docker Hub et Docker Store (téléchargement et stockage d’images)
Les images et conteneurs, première image Hello World
Comprendre le build sous Docker
Isoler des conteneurs
Travaux pratiques possibles : Installer Docker, mettre en place son environnement et exécuter un premier conteneur, bien manipuler Docker Run, Docker PS, Docker Image…)
Images et conteneurs dans Docker
Création d’une image depuis un conteneur, en utilisant un Dockerfile
Publication d’images dans un registry privé
Optimisation de la création d’images
Création de conteneurs personnalisés, gestion : les lancer, les arrêter, les débugger…
Layers et mise en cache
Travaux pratiques possibles : créer des images et des conteneurs personnalisés, les manipuler et les partager.
Volumes et gestion des données
Les volumes, les bind mounts et les tmpfs mounts dans Docker
Apprendre la création et l’utilisation des volumes Docker
Modification de données à l’intérieur d’un volume
Cycle de vie d’un conteneur
Travaux pratiques possibles : Les bonnes pratiques pour l’utilisation des volumes Docker
Docker : les réseaux
Gérer les ports réseaux (port mapping)
Liaison des conteneurs, partage des données entre les conteneurs
Docker network et ses sous-commandes
Types réseaux : bridge, overlay, host, none, macvlan…
Serveur DNS intégré, plugins réseaux
Partager des données entre conteneurs
Travaux pratiques possibles : Créer et gérer des réseaux Docker
Applications multi-conteneurs : Docker Compose
Présentation et installation de docker-compose
Commandes de base
Créer un fichier yml de configuration
Mise en œuvre d’une application multi-conteneurs
Gérer des microservices avec Docker Compose
Travaux pratiques possibles : Créer un projet piloté par Docker Compose, gérer plusieurs conteneurs liés
Orchestration et clustering
Introduction à Docker Machine, l’outil de provisioning
Installation et utilisation de l’outil docker-machine
Présentation et installation de Docker Swarm
Configuration du Swarm Mode
Création et gestion des services et clusters (ajout de nœuds, déploiement d’un service…)
Gestion des données sensibles (Secrets Docker)
Nœuds Manager et Worker
Service Discovery et répartition de charge (load balancing)
Introduction à Kubernetes la plateforme d’orchestration de conteneurs de Google
Travaux pratiques possibles : Créer un cluster multi-nœuds, déployer des applications en collections de services, manipuler l’orchestration avec Docker Machine, Docker Swarm et Docker Compose
Utiliser Docker en production
Bonnes pratiques et outils
Gestion des logs et des conteneurs, monitoring
Intégration continue avec Docker
Travaux pratiques possibles : Du développement à la production d’un workflow Docker