Formation Docker

De la virtualisation à Docker

  • Les différents types de virtualisation.
  • La conteneurisation : LXC, namespaces, control­groups.
  • Le positionnement de Docker.
  • Docker versus virtualisation.

Présentation de Docker

  • L'architecture de Docker.
  • Disponibilité et installation de Docker sur différentes plateformes (Windows, Mac et Linux).
  • Création d'une machine virtuelle pour maquettage.
  • La ligne de commande et l'environnement.

TP : Créer une machine virtuelle pour réaliser un maquettage.

Mise en œuvre en ligne de commande

  • Mise en place d'un premier conteneur.
  • Le Docker hub : ressources centralisées.
  • Mise en commun de stockage interconteneur.
  • Mise en commun de port TCP interconteneur.
  • Publication de ports réseau.
  • Le mode interactif.

TP : Configurer un conteneur en ligne de commande.

Création de conteneur personnalisé

  • Produire l'image de l'état d'un conteneur.
  • Qu'est­ce qu'un fichier DockerFile ?
  • Automatiser la création d'une image.
  • Mise en œuvre d'un conteneur.
  • Conteneur hébergeant plusieurs services : supervisor.

TP : Créer un conteneur personnalisé.

Mettre en œuvre une application multiconteneur

  • Utilisation Docker Compose.
  • Création d'un fichier YML de configuration.
  • Déployer plusieurs conteneurs simultanément.
  • Lier tous les conteneurs de l'application.

TP : Mettre en œuvre une application multiconteneur.

Interfaces d'administration

  • L'API Docker et les Webservices.
  • Interface d'administration en mode Web.
  • Héberger son propre registre : Docker Registry, Gitlab­CE...

TP : Construire et utiliser son propre hub.

Administrer des conteneurs en production

  • Automatiser le démarrage des conteneurs au boot.
  • Gérer les ressources affectées aux conteneurs.
  • Gestion des logs des conteneurs.
  • Sauvegardes : quels outils et quelle stratégie ?

TP : Tests de montée en charge

Orchestration et clustérisation

  • Présentation de Docker Machine.
  • L'orchestrateur Swarm : nodes, services, secrets, configs.
  • Déploiement de services et stacks dans un Swarm.
  • Traefik : reverse­proxy et load­balancer pour web­services en cluster.
  • Sauvegardes : quels outils et quelle stratégie ?

Travaux pratiques : Mise en place d'un cluster swarm