4ème anniversaire de Docker & Portainer.io

Un autre évenement ! Le 16 mars dernier à 19:00, j'étais à l'ENSEIRB (Ecole Nationale Supérieure d'Électronique, Informatique, Télécommunications, Mathématique et Mécanique de Bordeaux) pour participer à un meetup double !!

Le pitch

Double programme ce soir : 4ème anniversaire de Docker et présentation de Portainer.
4ème anniversaire

Docker fêtera son 4ème anniversaire la semaine du 13 au 19 mars et nous sommes fiers de la participation du Meetup Bordeaux. Ce sera l'occasion de découvrir ou d'approfondir Docker par l'intermédiaire de cours et de labs.

Compte-tenu du double programme de la soirée cette partie durera environ 30 minutes qui permettront de présenter et de débuter les activités. Bien sûr les mentors présents ce soir seront à votre disposition pour répondre aux questions pendant cette première partie et après la présentation d'Anthony.

Présentation de Portainer

Notre speaker sera Anthony Lapenna qui viendra nous parler de l'interface d'administration Portainer.io

Portainer.io

Portainer.io est une compagnie basée à Auckland, en Nouvelle-Zélande. Elle propose une interface utilisateur pour Docker appellée Portainer. Cette interface est née suite à une impression de besoin ressenti par les techniciens IT n'ayant pas ou peu de connaissance sur Docker. Portainer se veut être simple d'utilisation. Aussi simple à déployer, ce software permet de gérer des hôtes Docker standalone, clusters Swarm standalone ou encore clusters utilisant Swarmkit (swarm mode). Disponible pour Linux, Windows & Mac. 

Le talk parlera principalement de Portainer, présentation du logiciel, comparaison avec les autres solutions existantes (Rancher, Shipyard...), analyse des fonctionnalités et finira avec une démonstration.

Anthony Lapenna

Anthony Lapenna est un ingénieur logiciel originaire de Belfort passionné par l'open-source et l'automatisation. Ayant travaillé en tant qu'ingénieur système pendant plus de 3 ans dans une startup Parisienne, c'est durant cette période qu'il découvre Docker avec l'arrivée de la version 1.6. Après plus d'une année à jouer avec Docker il décide de passer aux choses sérieuses et accepte une offre d'emploi en tant qu'ingénieur pour une companie Indonésienne proposant l'hébergement de clusters Docker. Afin de faciliter l'utilisation de Docker pour les clients de cette compagnie, Anthony à commencer à travailler sur interface utilisateur pour Docker provoquant la naissance de Portainer. Anthony est maintenant ingénieur logiciel chez Portainer.io. 

Super Pitch, un peu long mais qui explique déjà tout !

Les 4 ans de Docker !

4 ans déjà, pour ceux qui ne connaissent pas Docker, je vous conseille d'aller faire un tour sur la page wikipédia qui explique la génèse du projet !

Pour les plus feignants :
Docker a été développé par Solomon Hykes pour un projet interne de dotCloud, une société proposant une plate-forme en tant que service, avec les contributions d'Andrea Luzzardi et Francois-Xavier Bourlet, également employés de dotCloud. @source Wikipédia

Oui au départ c'était un outil interne d'une boite de PaaS. Puis ils se sont dis qu'il serait pas mal d'ouvrir ça à tous. Ils ont donc open sourcé le projet et maintenant : 1 655 contributeurs sur Github, 12 437 Forks, 31 659 commits, 41 185 mise en favoris !

La bonne idées donc car Docker est maintenant incontournable.

Pour les néophytes, regardez cette image (logo de la compagnie) 2 secondes :

Que voyez vous ?? Une baleine, oui mais aussi des containers. Et ça vous fait penser à quoi ?? Peut être à ça, non :

Et bien ce n'est pas un hasard ! Les containers introduits par Docker permettent literallement de transporter des applications web comme on transport des biens via les containers que l'on peut mettre sur un bateau, un train, un camion... Le top c'est que chaque maillon de la chaine fait son travail :

  • Le dev, developpe et mets dans le container
  • Le container voyage soit par le docker hub, soit pas d'autres modes...
  • L'hébergeur héberge le container !
  • Le client utilise l'application

Idem que ça :

  • Le marchant remplis le container avec les produits qu'il a manufacturé
  • Le transporteur deplace le container comme il le souhaite
  • Le container est stocker à la douane (en générale quelques jours)
  • Le client récupère sa marchandise !

Dans les deux cas le client se fou de savoir ce qu'il se passe lors du developpement / ou de la création et se moque bien du mode de transport ! Il vaut son produit et un produit fonctionnel !

Un container dans la marine est un objet normé, permettant à tout le monde de parler le même langage (pour le stockage, le transport, la maintenance ou encore l'entretien). Ca date de 1967, allez voir ici si vous ne me croyez pas !.
Et figurez vous qu'un container Docker est exactement la même chose !! Ni plus ni moins ! Si ce n'est que c'est adapté à l'informatique !

A côté de ce projet plutôt cool, Docker à mis en place un hub qui héberge les images que les dev crée, un peu comme github !
On y retrouve pas mal d'application, dont certaines avec plus de 10M de pulls (récupération). Aujourd'hui, le hub totalise 5 milliards de pull ! 650 000 utilisateurs enregistrés et en février dernier, cela faisait 7000 pulls par minutes !

Docker étant une entreprise, elle doit faire de l'argent, valorisée plus d'1 miliard de dollars, elle vient de mettre en place une nouvelle approche en 2 espaces :

  • un espace community gratuit, open-source, tel qu'on le connait ;
  • un espace enterprise payant, avec un support des images certifiées et des changements de version plus lent pour gagner en stabilité pour les pro !

Pour satisfaire cela, le hub se transforme et devient le store ! Cela ne change pas grand chose pour nous simples mortels, mais Docker cela permet de gagner en crédibilité. Objectif, comme slogan, devenir le standard du Build, Ship and Run any App, Anywhere.

Tout ça en juste 4 ans ! Impressionnat !

Bref, le meetup

Notre hôte nous a refait un point d'étape sur les chiffres impressionnant et nous a expliquer les différences entre les version DCE et DEE (Docker Community Edition et Docker Enterprise Edition). Je n'ai pas les slides, sinon je les aurais partagé !

Et nous avons pu festoyer autour d'un gouter offert par Docker (et on a eu des t-shirt, badges et autocollant Docker) !

Ah autre chose, on a pu jouer avec le site dédié pour le 4ème anniversaire : birthday.play-with-docker.com. Je vous le conseil, c'est simple didactique et rapide ! Bon pas sur place, car il n'y avait pas de wifi mais bon, l'idée était là !

Portainer.io

J'ai découvert portainer il y a quelques temps, j'ai trouvé ça plutôt sympa pour gérer ses container, en fait cela ajoute une interface graphique à Docker (oui parce que Docker n'est qu'en ligne de commande).

Et cette interface m'a tappé dans l'oeil car elle permet vraiment de faire tout ce que l'on fait en ligne de commande mais visuellement, ce qui permet d'avoir de petites choses sympa, comme des graphes d'utilisation, le nombre d'images, le nombre de volumes... bref tout plein de choses, sympa. Avant d'allez plus loin, allez donc jetez un oeil à la démo ! Mais j'avais laissé tombé car je suis sous Windows et ça ne fonctionnait pas sous Windows ! (problème résolu aujoud'hui -exactement quelques jours avec le meetup !)

Pour les fleimards ça ressemble à ça :

Le top c'est ça :

Mais le tip top c'est ça :

Oui, on peut gérer des utilisateurs sur l'administration des images et container !!

Bref, le meetup

Pendant le meetup, j'ai découvert deux choses :
1- la société portainer est composée uniquement de deux personnes !!

  • Neil Cresswell
  • Anthony Lapenna

2- ils n'ont pour le moment pas de revenus !!

Je me demande comment une appli si pratique et si puissante n'a pas tapé dans l'oeil d'un investisseur !

Si vous voulez voir les slides, c'est ici !

Pour les plus faignants : crée en 2016 en Nouvelle Zélande par Neil Cresswell et Anthony Lapenna, portainer.io est une UI pour Docker open-source ! Elle permet de manipuler les containers simplement (un beau taff d'UX/UI !) et ça fonctionne sur toutes les plateformes et tous les modes Dockers (standalone, Docker Swarm et Swarm mode). C'est une alternative à d'autres outils (que je ne connaissait pas) à savoir :

  • Rancher UI (bien que maintenant Portainer soit inclut)
  • Shipyard
  • UI for Docker (mais le developpement est stoppé)
  • Docker Cloud / Datacenter (payant)
  • Panamax

Quelques chiffres : 2 600 mises en favoris sur Github, 10M+ pulls sur le hub docker et 50+ contributeurs ! Ca donne le tournis !!

La roadmap est précise et intéressante, je vous conseille d'aller jeter un oeil sur le github du projet car c'est plein d'info et vraiment bien organisé !

Ah oui, c'est codé en GO avec un peu Angular v1 pour l'interface.

Voilà, vous savez tout
A+
Tony B.