Popularisés par le projet Open Source Docker, l'adoption des containers s'étend, en particulier sur la plateforme cloud de Google. Ce dernier a montré la semaine dernière en mode preview une machine virtuelle pour son service Cloud basée sur cette technologie de virtualisation qui facilite l'installation et le déplacement des applications dans le cloud. Docker fournit un container pour une application et pour les bibliothèques qui lui sont associées, ce qui permet de la déplacer aisément d'un serveur à l'autre (*). Dans le même temps, Google a ajouté CoreOS aux OS à utiliser avec les VM sur Compute Engine. Cette distribution Linux légère a été conçue pour exploiter les containers Docker dans un environnement distribué.
Au cours de la conférence développeurs GlueCon de Denver, Joe Beda, ingénieur logiciel chez Google, a expliqué l'utilisation de containers comme des machines virtuelles. Comme celles-ci, ils contiennent une application, en revanche, ils n'incluent pas un OS complet et partagent l'OS de leur hôte, c'est-à -dire Linux dans le cas des containers Docker. Ils consomment donc moins de ressources qu'une machine virtuelle tant que l'utilisateur reste calé sur Linux. Et ils se mettent en place plus rapidement, s'installant en quelques secondes alors qu'une machine virtuelle peut demander plusieurs minutes pour se créer et se lancer.
A l'étude, un format pour gérer les containers
Les performances sont aussi meilleures sur l'application comparée à celle qui s'exécute dans une VM qui doit passer par l'hyperviseur. La société Docker, qui a lancé le projet en mars 2013, estime qu'une application s'exécute deux fois plus rapidement dans un container que dans une VM. Il est aussi possible de placer davantage de containers dans un seul serveur puisque l'OS n'est pas dupliqué pour chaque application.
Google figure parmi les premiers envisageant de proposer des VM basées sur Docker sous la forme d'un service cloud. AWS a également commencé le mois dernier à proposer de charger des images Docker via son service d'hébergement Elastic Beanstalk. En mars, Google a réactivé ses efforts marketing autour de ses plateformes IaaS et PaaS. En plus des VM containers, il a mis en Open Source l'agent pour les lancer et les gérer. Il a également soumis un format décrivant la façon d'exploiter un ensemble de containers et sollicite des suggestions pour étendre ce format au-delà de sa propre plateforme de cloud. Red Hat figure aussi parmi les fournisseurs investis sur le développement de Docker.
(*) Cette technologie de containers est par exemple utilisée par Commerce Guys sur son offre Platform de déploiement de sites web et de e-commerce s'appuyant sur Drupal.