Dawan

Docker : Initiation + Approfondissement

Par Dawan

Objectifs

Connaître les caractéristiques d'un conteneur Linux et découvrir Docker -Installer et utiliser Docker, connaître les fonctionnalités avancées - Maîtriser les images Docker et leur cycle de vie, rédiger des "Dockerfile" - Connaître et configurer une Registry (publique et privée) - Maîtriser les notions réseaux de Docker (drivers, links) - Comprendre et maîtriser la persistance des données (drivers, volumes) - Maîtriser la notion de service et stack Docker avec Docker-compose - Utiliser Docker Swarm pour déployer une stack orientée Production - Maîtriser les bonnes pratiques - Maîtriser la sécurité de sa plateforme docker

Programme

Introduction

  • Les différentes formes de virtualisation et leur concept
  • Présentation des avantages et des cas d'utilisation des conteneurs
  • Présentation de Docker et de son architecture

Prendre en main Docker

  • Installer Docker
  • Utiliser les commandes de base du client Docker
  • Expliquer un conteneur et son cycle de vie
  • Instancier un conteneur (mode interactif, mode détaché)
  • Administrer et superviser un conteneur depuis le docker host (exec, inspect, logs...)
  • Atelier pratique
  • : Mise en place de Docker, démarrer et administrer un premier micro service

Manipuler des images Docker

  • Présentation du concept d'images Docker (Docker Hub, images personnalisées)
  • Les différentes méthodes de conception d'une image Docker
  • Créer une image à partir d'un conteneur (commit)
  • Créer une image à partir d'un Dockerfile
  • Les instructions dans un Dockerfile (FROM, COPY, ADD, EXPOSE, ENTRYPOINT, CMD)
  • Gérer le cycle de vie des images (labels, tags, versionning mineur/majeur)
  • Sélectionner et récupérer une image depuis la communauté "Docker Hub"
  • Le concept des layers et du cache (optimisation)
  • La registry et le stockage des images (registry privée, registry "Docker Hub" )
  • Atelier pratique
  • : Création, installation d'images. Mise en place d'une registry privée et gérer ses images

Configurer le réseau pour Docker

  • Le conteneur dans son réseau (stack réseau Docker)
  • Le port forwarding (PAT)
  • Liaisonner des conteneurs (links)
  • Les différents réseaux proposés par Docker (drivers, les impacts et cloisonnements)
  • Atelier pratique : Faire communiquer les conteneurs, mise en place d'un LEMP à partir de 3 conteneurs : PHP, MySQL, nginx.

Gérer les systèmes de fichiers pour Docker

  • Le principe de volumes associés à un conteneur
  • Créer et persister des volumes docker
  • Gérer les modèles de configuration et leurs bonnes pratiques
  • Atelier pratique : Créer des volumes sur son Docker host pour persister et visualiser les données des conteneurs

Réaliser une Infrastructure As Code avec Docker

  • Introduction au DevOps
  • Docker-compose : la solution pour créer, assembler et administrer son service de conteneurs
  • Mettre en place un contrôle de l'exécution
  • Atelier pratique : Mise en place d'un LEMP avec Docker-compose à partir de 3 conteneurs précédemment abordés : PHP, MySQL, nginx

Appréhender le déploiement à grande échelle avec Docker

  • Les enjeux
  • Docker-machine ( créer rapidement sa plateforme Docker avant mise en production)
  • L'orchestrateur Swarm : nodes, services
  • Déploiement de services et stacks dans un Swarm
  • Comment sécuriser l'infrastructure Docker (TLS/SSL, Apparmor et SeLinux)
  • Interface de management (Portainer)
  • Présentation des outils de déploiements et de gestion de configuration (ansible, puppet, salt)
  • Présentation des différents orchestrateurs

Optimiser la conception d'images

Rappels sur la conception des "Dockerfiles" Développer une conception et une gestion fine du cycle de vie des images Justifier la gestion du cache avec les "layers" Rompre avec le systeme d'idempotence Construite une image en "multi-stage builds" Contrôler l'état applicatif dans l'image Identifier les projets communautaires incontournables : analyse, métrics, reverse-proxy, sécurité

  • Atelier pratique : Création d'images via le multistage-build. Analyse des layers,optimisation du cache. Utilisation de la registry privée. Utilisation d'images de la communauté

Restructurer docker-compose

  • Rappels sur les concepts
  • Assembler les ressources (les services, les réseaux, les volumes)
  • Intégrer intelligemment les variables d’environnement
  • Adapter les contextes de build : "Dockerfile"
  • Résoudre les dépendances entre services
  • Mettre en place un contrôle de l'exécution
  • Industrialiser une stack docker-compose
  • Atelier pratique : Conception d'une application à travers docker-compose et dockerfile. Industrialisation de la création de stack docker-compose avec l'outil cookiecutter.

Construire un environnement de production : clustering, orchestration et monitoring

  • Définir les enjeux d'un orchestrateur
  • Expliquer Swarm et ses fonctionnalités
  • Illuster la notion de nodes (manager, worker)
  • Examiner le réseau et les "topologies mesh"
  • Atelier pratique : Installation d'un cluster swarm (avec docker-machine). Installation d'outils de visualisation et monitoring de l'infra. Démarrage d’un service et mise à l’échelle au sein du cluster.

Gérer le cycle de vie approfondi des conteneurs

  • Consolider les ressources à travers les commandes docker update
  • Délimiter les domaines d'exécutions des conteneurs (les labels, placements par node)
  • Utiliser les mécanismes de "rolling update" et "rollback"
  • Atelier pratique: Sur la base de l'infrastructure précedemment mise en place, nous allons effectuer des montées de version, puis effectuer des rollbacks.Optimisation de l'emplacement des conteneurs.

Appréhender la sécurité pour Docker

  • Sécuriser la plateforme avec TLS/SSL (client, hotes, registry)
  • Identifier les risques : noyau, service Docker, containers, déni de service, accès réseau
  • Utiliser des mécanismes de protection : "subnet" spécifique par application, limitations de ressources par les "cgroups", restrictions des droits d'accès sur les sockets, politique de sécurité des containers
  • Examiner les "events" docker
  • Fiabiliser les images déployées dans Docker : présentation de "Content Trust" pour signer les images
  • Atelier pratique : Mise en évidence de failles de sécurité et des bonnes pratiques à adopter. Isolations et limitations des ressources. Création et déploiement d'images signées.

Pédagogie

  • Un support et les exercices du cours pour chaque stagiaire
  • Un formateur expert ayant suivi une formation à la pédagogie
  • Boissons offertes pendant les pauses en inter-entreprises
  • Salles lumineuses et locaux facilement accessibles
  • Méthodologie basée sur l'Active Learning : 75% de pratique minimum
  • Matériel pour les formations présentielles informatiques : un PC par participant
  • Evaluation de fin de formation : Certification CPF ou mise en situation notée par le formateur
  • Nos formations sont accessibles aux personnes en situation de handicap
    si vous êtes en situation de handicap, nous sommes en mesure de vous accueillir, n'hésitez pas à nous contacter à referenthandicap@dawan.fr nous étudierons ensemble vos besoins.

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

Alter Way
Officielle Docker - Docker for Enterprise OperationsPar Alter Way

Partenaire officiel de Mirantis (Docker Enterprise), 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.

Partenaire historique de Mirantis (Docker Enterprise), 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.

Global Knowledge
Docker Containerization EssentialsPar Global Knowledge

In this course, you’ll learn how to create and manage individual containers using the Docker Engine. We’ll cover best practices in container image design and container deployment and auditing, as well as an introduction to single-node container networking and storage. This course is best practices focused, and is designed to enable rapid successful adoption of containerization from first principles.

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
  • Décrire les principes de l'orchestration de conteneurs Docker
  • Créer et mettre en oeuvre Kubernetes
  • Orchestrer des conteneurs Docker
  • Déployer des applications.
Zenika
Docker Officielle : CN100 - Docker Containerization EssentialsPar Zenika

Dans cette formation, vous apprendrez comment créer et gérer des simples conteneurs en utilisant Docker. Nous ferons le tour des bonnes pratiques de conceptions d'image de conteneur, de déploiement de conteneur et d'audit, ainsi qu'une introduction aux mécanismes réseau et stockage pour les conteneurs sur un serveur unique. Cette formation est orientée bonnes pratiques et conçu pour faciliter une rapide montée en compétences sur la conteneurisation.

Formation animée en présentiel

Formation disponible en mode "formation à distance"