Recherche avancée
Par formation
Par date
Par ville
logo HUB Formation
Organisme de Formation
aux Technologies et métiers de L'informatique
La pédagogie au service de la technologie
> > > Docker : La gestion des containers virtuels

Docker : La gestion des containers virtuels

docker

En environnement Linux, Docker fournit une solution de virtualisation qui ne nécessite pas de système d'exploitation propre puisqu'il utilise les fonctionnalités système sous-jacent. Il empaquète les applications et automatise leur déploiement en utilisant la technique de containérisation. très présent en environnement OpenStack, ce produit est aussi largement interfacé avec les outils de gestion d'infrastructure du marché, l'ensemble constituant une alternative technologique aux solutions traditionnelles de virtualisation.

Objectifs

  • Comprendre le positionnement de Docker et principe de containerisation
  • Découvrir les différentes méthodes d'installation de Docker
  • Découvrir le principe de fonctionnement de Docker et de ses conteneurs

Public

  • Ce cours s'adresse aux architectes logiciels, administrateurs systèmes, DevOps et développeurs.

Prérequis

  • Avoir des connaissances en environnement Unix/Linux.

Programme de la formation

Introduction

Présentation et mise en oeuvre des VMs Debian9 & CentOS 7

  • Conteneurs industriels

Salomon HYKES, de DotCloud à Docker,Inc

Grands principes de l'urbanisation logiciels

Intérêts

La containerisation

Les solutions existantes

  • Concepts de containerisation
  • Comparatifs entre containerisation et virtualisation
  • Présentation de l'outils Docker,Inc
  • Les versions de Docker,Inc

Ecosystème de Docker,Inc

NameSpace & Cgroups de Docker

Les PID sur la machine Hôte

  • Cloisonnement des PID par NameSpace

Cloisonnement des ressources hardware par nameSpace

De LXC à LibContainer

Imbrication des couches logiciels de Dockers,Inc

Les systèmes de fichiers en couches

UnionFS

  • Devicemapper

Comparaisons entre filesystem en couches et disques virtuels

Les multiples processus d'installations

Linux Debian

  • CentOS Docker EE
  • CoreOS
  • DockerForMac
  • DockerForWindows

La stack réseau de docker

  • Le réseau bridge
  • Le réseau host
  • Le réseau none

Docker compose

  • Principes générales
  • Écriture d'un fichier docker-compose.yml

Lancement et gestion automatique des conteneurs

Présentation du container « Hello-World »

Vérification de la chaîne logicielle avec le container hello-world

  • Les étapes clés d'une instanciation
  • Les commandes Docker

Container ID

Le registry public

Présentation de l'interface Web https://store.docker.com

  • Les bonnes pratiques
  • Accès au registry en mode commande
  • Création d'un compte en ligne

Connexion de Docker à la plateforme en ligne

Instanciation d'images

Les couches de l'instanciation

  • Lancement en mode interactif
  • Les instructions de « run »
  • Le passage de variables d'environnement
  • Lancement en arrière plan
  • Le recyclage des processus
  • Les logs

DockerUI (Portainer)

Création d'une image pas à pas

Création d'un serveur apache2 sur système Ubuntu

Création d'un Dockerfile

Anatomie d'un Dockerfile

  • Création d'un dockerfile serveur Ubuntu+apache2+php7.0
  • Création d'une image MYSQL

Sauvegarde des images sur le hub public

Persistance des données dans le temps

Sur une volume simple (debian 9)

  • Implémentation Docker EE sur Linux CentOS 7
  • Sur système LVM thin pool (CentOS7)
  • Mise en oeuvre d'un registry privée

La stack réseau de Docker

  • Le réseau bridge
  • Le réseau host
  • Le réseau none
  • Le réseau MacVlan

IEEE 802.1Q (rtunk Cisco)

Debian 8 - Adaptation du noyau Linux aux VLANs avec Docker

  • Vérification version de noyau et logiciel
  • Téléchargement de sources
  • Construction d'un noyau adapté
  • Patch AUFS
  • Compilation
  • IpVlans sur noyau Debian

Docker compose

  • Principes généraux
  • Ecriture d'un fichier docker-compose.yml
  • Lancement et gestion automatique des conteneurs

Docker Machine

  • Gestion de l'outil Docker machine
  • Provisionnement local

Docker swarm

  • Configuration d'un cluster swarm
  • Orchestration d'un cluster de machine
  • Load Balancing entre serveurs de cluster

Kubernetes avec Docker

  • Concept

Annonce Docker-EE (juillet 2018)

  • FAM (Fédérated Application Manager - projet Armada)
  • Docker Applications Designer - projet Baguette)
  • Vidéo explicative