Ce livre de la collection vBook se compose d'un livre de référence sur Docker qui présente les concepts fondamentaux de la technologie Docker et d’un approfondissement sous forme de vidéo sur la compilation et les fonctionnalités de production d’une image Docker.
Livre Docker - Concepts fondamentaux - Déploiement d'applications distribuées
Ce livre s’adresse aux développeurs, architectes et administrateurs système, ainsi qu’à toute personne désireuse de...
Ce livre de la collection vBook se compose d'un livre de référence sur Docker qui présente les concepts fondamentaux de la technologie Docker et d’un approfondissement sous forme de vidéo sur la compilation et les fonctionnalités de production d’une image Docker.
Ce livre s’adresse aux développeurs, architectes et administrateurs système, ainsi qu’à toute personne désireuse de comprendre les concepts fondamentaux de la technologie Docker, sans entrer dans toutes ses subtilités ni tous ses cas d’usage, pour les mettre en oeuvre dans le déploiement d’applications distribuées.
Empreint de toute la pédagogie de l’auteur, ce livre permet au lecteur de se poser les bonnes questions et d’apprendre à être pleinement autonome pour affronter avec un oeil critique la masse de conseils disponibles sur Internet afin de trouver la bonne information.
Après plusieurs chapitres dédiés à la prise en main de Docker, l’auteur transmet les bonnes pratiques de création d’images avant de montrer en quoi Docker permet de mettre en oeuvre des applications découpées en modules, voire en microservices, en prenant l’exemple d’une application développée en .NET Core.
Un chapitre est dédié à l’orchestration de conteneurs, que ce soit à l’aide de Kubernetes ou de Swarm, qui peut se révéler être une alternative intéressante du fait de sa simplicité d’utilisation. Les spécificités de Docker sous Windows sont également mises en avant.
Pour finir, le lecteur appréhende la mise en oeuvre en conditions industrielles de Docker, avec des recommandations de bonnes pratiques pour les environnements de production.
Vidéo Docker – Compilation et fonctionnalités de production d’une image
Docker est une brique fondamentale des approches DevOps et de la capacité à déployer en continu des produits logiciels complexes.
L’objectif de cette vidéo est de vous donner les clés pour comprendre les principes de Docker et la philosophie sous-jacente des approches par conteneurs pour vous amener à faire les bons choix d’implémentation de la technologie dans un écosystème de plus en plus complexe. Pour bien la suivre, quelques prérequis sur Linux et les commandes de base sur ce système d’exploitation sont utiles.
Après une présentation de l’architecture de Docker et de la compilation d’une image Docker très simple, vous étudierez ensuite des fichiers Dockerfile un peu plus complexes et manipulerez un registre d’images pour expliquer comment ces dernières peuvent être versionnées et diffusées. La gestion du réseau et des volumes pour la persistance sera également détaillée.
1.2.6 Gestion du multitenant au moyen des conteneurs
1.3 Gestion de la performance
1.3.1 Passage à l'échelle automatique
1.3.2 Cas particulier du cache
1.3.3 Alignement sur le CPU et les threads
1.3.4 Approche "production only"
1.4 Sécurité
1.4.1 Mangue ou noix de coco ?
1.4.2 Évolution de la gestion de la sécurité par Docker
1.4.3 Pratique de sécurisation des ports
1.4.4 Sécurité sur l'utilisation des images
1.4.5 Restriction sur les ressources
2. Mise en œuvre d'un registre privé
2.1 Objectifs
2.2 Votre registre en complète autonomie
2.2.1 Image à utiliser
2.2.2 Lancement du registre
2.2.3 Utilisation du registre
2.3 Les limites du mode autonome
2.3.1 Limites en termes d'utilisation
2.3.2 Limites en termes de sécurité
2.3.3 Limites en termes de performance
2.3.4 Limites en termes de stockage
2.3.5 Et toutes les autres limitations d'un registre autogéré
2.4 Utilisation d'un service cloud déjà préparé
2.4.1 Azure Container Registry
2.4.2 Notes finales
2.5 Approches complémentaires
2.5.1 L'API du registre
2.5.2 Mise en place d'un miroir
3. Plateformes de déploiement de conteneurs
3.1 Amazon Web Services
3.1.1 Description des services
3.1.2 Amazon ECR
3.1.3 Amazon ECS
3.1.4 Amazon Elastic Beanstalk
3.2 Microsoft Azure
3.2.1 Description des services
3.2.2 Azure Kubernetes Service
3.2.3 Azure Cluster Service Fabric
3.2.4 Azure Container Instances
3.3 Google Cloud Platform
3.3.1 Description des services
3.3.2 Google Kubernetes Engine
3.3.3 Google Compute Engine
3.3.4 Google Container Registry
3.3.5 Google Cloud Run
4. Remarques sur les usages industriels de Docker
4.1 Supervision mixte
4.2 Intégration de bases de données
4.3 Cluster hybride
4.4 Docker en usine logicielle
4.4.1 Déploiement
4.4.2 Compilation
4.4.3 Infrastructure de l'usine logicielle
4.4.4 Gestion des tests
4.4.5 Utilisation pour les machines supports de tests
4.4.6 Registre pour l'ALM
4.5 Docker comme une commodité
Index
Jean-Philippe GOUIGOUX
Ingénieur avec un double diplôme en Génie des Systèmes Mécaniques et automatisation de l'Université de Technologie de Compiègne et de Cranfield University, Jean-Philippe GOUIGOUX travaille aujourd'hui pour Salvia Développement en tant que directeur technique d'un groupe de six business units, ce qui lui permet de mettre en œuvre son approche d'industrialisation de l'édition logicielle. Jean-Philippe GOUIGOUX est reconnu Microsoft MVP (Most Valuable Professional) dans diverses spécialités depuis 2011, et certifié TOGAF. Il intervient régulièrement en conférences sur des sujets informatiques variés allant de la gestion de données à Docker, en passant par la performance en .NET. Passionné par le partage de ses connaissances, il est auteur de plusieurs livres et vidéos parus aux Éditions ENI.