1. Livres & vidéos
  2. Docker
  3. Avant-propos
Extrait - Docker Concepts fondamentaux et déploiement d'applications conçues en services (3e édition)
Extraits du livre
Docker Concepts fondamentaux et déploiement d'applications conçues en services (3e édition) Revenir à la page d'achat du livre

Avant-propos

Introduction

Lors de l’écriture du premier ouvrage sur Docker par un des auteurs, la technologie était encore jeune et un réel emballement était visible autour d’elle. Comme souvent dans ce cas, une certaine confusion existait alors sur la portée exacte de la technologie, et le livre avait pour but de ne pas partir directement dans une explication des fonctionnalités de Docker, mais de commencer par préciser l’intention de l’outil ; bref, le rôle qu’il se proposait de jouer dans un SI (système d’information), plutôt que de décrire toutes ses fonctionnalités, dont certaines n’étaient d’ailleurs pas stables.

Environ deux ans plus tard, pour un second livre sur le sujet, Docker était devenu un outil majeur et presque un standard parmi les possibilités offertes pour déployer des applications. Toutefois, ce besoin de comprendre le pourquoi de la technologie avant de se pencher sur le comment restait d’actualité. Docker s’était inséré partout, commençait à bénéficier d’un riche écosystème, avait été adoubé par tous les fournisseurs de cloud et disposait même d’une implémentation Windows en plus de son origine Linux. Cette profusion d’annonces autour de Docker rendait encore plus nécessaire de revenir aux fondamentaux pour acquérir une bonne compréhension des principes de la technologie et être en mesure de séparer les usages en cours de standardisation des modes passagères. Comprendre pourquoi Docker était né permettait de mieux appréhender son fonctionnement.

Quelques années plus tard, Docker est abondamment utilisé, et la technologie des con-teneurs devient la façon la plus logique et standard de déployer des applications de ma-nière professionnelle. Docker est même utilisé de manière masquée par d’autres techno-logies, et fait donc partie des technologies fondamentales. À ce titre, on pourrait croire que comprendre son fonctionnement interne n’est pas indispensable et que l’usage est plus important que les mécanismes qui le sous-tendent. Le parti pris de ce livre est de continuer à expliquer les rouages de Docker pour que les lecteurs puissent en faire le meilleur usage, choisir les bons outils, mais aussi comprendre comment remédier aux problèmes lorsqu’ils se posent et que le fonctionnement n’est pas celui attendu. Docker reste un écosystème complexe, et comprendre ses fondements permettra d’éviter des erreurs d’architecture ou de contrer rapidement des évènements inattendus.

La première édition du présent ouvrage était bien plus conséquente que les deux précédents livres car l’écosystème autour de Docker avait fortement grossi : version Windows, déploiement sur des orchestrateurs Swarm ou Kubernetes, utilisation dans des usines logicielles et maints autres sujets nécessitaient d’être traités ou à tout le moins présentés pour montrer tout le potentiel d’un système désormais dans une phase de maturité. Docker était clairement au centre du jeu et les technologies satellites s’alignaient autour de cette technologie ; il était donc logique de présenter d’un seul coup l’ensemble de l’écosystème Docker, devenu synonyme de conteneurisation.

Dans la deuxième édition, le focus était porté sur Docker lui-même plutôt que sur l’ensemble des technologies et méthodes autour de la conteneurisation. Les orchestrateurs, et en particulier Kubernetes, étaient désormais largement utilisés et d’une telle complexité qu’un ouvrage dédié était indispensable. Seule l’installation de Docker Swarm restait présentée car il s’agissait d’une solution simple et intégrée directement par l’éditeur de Docker. Cette deuxième édition montrait également le très haut niveau d’intégration des systèmes d’exploitation qui faisait que Docker pouvait être utilisé sous Windows sans même qu’on se rende compte de la présence de la couche Windows Subsystem for Linux.

Pour cette troisième édition, il va sans dire que le choix de traiter les orchestrateurs dans un ouvrage séparé est confirmé, vu la complexité croissante de l’écosystème Kubernetes. Docker Swarm sera toujours montré justement comme une alternative bien plus légère mais suffisante pour la plupart des besoins de déploiement en cluster. L’intégration dans les usines logicielles sera davantage creusée, car Docker est désormais inclus dans de nombreuses solutions de ce type.

Comme dans les précédentes éditions, ce livre n’a pas vocation à couvrir toutes les subtilités expertes de Docker et à empiler les lignes de commande pour couvrir tous les cas d’usage. Il cherche plutôt à rester extrêmement simple et pédagogique, en prenant tout le temps nécessaire pour faire en sorte que même les débutants comprennent en profondeur les fondamentaux, et en insistant au contraire sur tous les petits problèmes de mise en œuvre qui peuvent apparaître lorsque l’on débute et qu’on ne maîtrise pas encore le fonctionnement du produit. Le but est que les lecteurs sachent ensuite se poser les bonnes questions et être pleinement autonomes pour affronter la masse de conseils fournis sur Internet avec un œil critique qui leur permettra de trouver la bonne configuration, le fichier Dockerfile qui leur convient, et de les modifier en connaissance de cause.

L’utilisation d’une application...