Comment Dockeriser son site web ? Quels outils pour dockeriser son site web ?

Parmi la liste des outils et services indispensables dans la mise en œuvre d'une architecture Docker, le Docker Hub occupe bien évidement la première place. C'est un outil incontournable pour générer les build et publier les images des conteneurs. Néanmoins, outre les outils fournis par Docker, il existe bien d'autres solutions qui gravitent autour des containers Docker. Mario Loriedo consultant chez Zenika souligne : "Docker a à peine 2 ans mais son écosystème est déjà plutôt vaste. On y trouve notamment des extensions pour les IDE qui permettent de travailler avec les conteneurs en phase de développement." Et c'est le cas des extensions référencées par Sublime Text. Des plugins existent tant pour Eclipse, IntelliJ, Visual Studio, Vim, Emacs, etc. "Pour l'intégration continue, il existe des plugins Jenkins et Maven mais aussi des services comme CircleCI et TravisCI qui supportent les conteneurs Docker."

Sublime Docker est l’extension Docker pour l’IDE Sublime Text. © GitHub

Gérer des architectures de containers en cluster avec Swarm

Pour gérer des solutions multi-conteneurs ils existent plusieurs outils : Docker Compose est limité à un seul serveur, mais pour mettre en place des clusters de serveurs Docker, on peut se tourner vers des solutions telles que Mesos, Kubernetes et Docker Swarm. En effet, un atout clé de Docker, c'est aussi de pouvoir déployer une architecture unifiée qui s'appuie sur de multiples infrastructures. Il est ainsi tout à fait possible de déployer des instances Docker sur un service de cloud public en parallèle à d'un cloud interne. Il est même imaginable que cette architecture s'appuie sur plusieurs prestataires de cloud public, au gré des besoins de telle ou telle zone géographique, par exemple.

En termes de cloud et prestataires d'hébergement, l'offre s'est considérablement élargie

Pour faire communiquer ainsi des instances et gérer des clusters, Stéphane Vincent d'Alter Way a opté pour Docker Swarm. "C'est cette solution qui va permettre de répartir les images sur différents serveurs Docker", explique-t-il. "Pour traiter les problèmes qui vont apparaître, notamment au niveau de la gestion du réseau, différentes solutions sont alors possible. Il existe SockerPlane notamment, mais nous n’utilisons pas encore cette solution qui ne correspond pas à nos besoins internes. Nous préférons la solution de Wave Network qui permet de gérer un Software Defined Network au niveau de Docker, et donc de pouvoir assurer une continuité réseau auprès des serveurs et simuler un réseau auprès d’un groupe de containers."

La liste des clouds orientés Docker s'allonge de jour en jour

En termes de prestataires d'hébergement et fournisseurs de cloud, l'offre s'est considérablement élargie ces derniers mois quant au support de Docker. Mario Loriedo de Zenika souligne : "Deis a été le premier à supporter les conteneurs. Aujourd'hui Amazon Web Services, Microsoft Azure, Cloud Foundry et Google Cloud sont les plus populaires. Depuis quelques mois OVH également supporte Docker via RunAbove."  Une liste, dans laquelle on peut ajouter Alter Way ou encore Digital Ocean, qui ne cesse de s'allonger tous les jours.