Docker
Build, ship and run any app, anywhere
Build, ship and run any app, anywhere
Docker est un logiciel libre (écrit en go) développé par la société du même nom permettant de séparer les applications de l'infrastructure afin de pouvoir livrer des logiciels rapidement.
Docker permet de packager et d'exécuter une application dans un environnement isolé, appelé container. Un container n'embarque pas de système d'exploitation ce qui lui permet de s'exécuter en quelque secondes et d'être beaucoup plus léger qu'une machine virtuelle. L'isolation et la sécurité vous permettent d'exécuter plusieurs containers simultanément sur un hôte donné. Ils n’ont pas besoin de la charge supplémentaire d’un hyperviseur, mais s’exécutent directement dans le noyau de la machine hôte. Cela signifie que vous pouvez exécuter plus de containers sur une combinaison matérielle donnée que si vous utilisiez des machines virtuelles. Vous pouvez même exécuter des containers Docker sur des machines hôtes qui sont en fait des machines virtuelles!
Docker se distingue des solutions de virtualisation de système complet type Vmware ou HyperV et intervient uniquement sur la couche applicative en embarquant les librairies et les binaires nécessaires à l’application dans un container. Le poids d’un conteneur est nettement inférieur à celui d’une machine virtuelle, ce qui incite énormément d’entreprises à réfléchir à la conteneurisation de leurs applications afin d’économiser principalement sur le coût de stockage, mais également pour améliorer le retour sur investissement (ROI), le rendement d’une machine physique, les évolutions de version (retour arrière/mise à jour) et réduire le temps de mise en production ou le « Time-To-Market ».