Une entrevue avec Docker

docker

Moby Dick des temps modernes

Bonjour à tous et à toutes ! Nous voici à l’antenne avec une personne célèbre que vous connaissez peut-être : Docker. Aujourd’hui, nous allons répondre à plusieurs questions que nos chers interlocuteurs se posent à propos de notre baleine bleue :

  • Qui êtes-vous ?
  • Qu’apportez-vous au monde informatique ?
  • Comment est-ce que cela fonctionne ?
  • On vous confond souvent avec votre cousin Vagrant, qu’avez-vous à dire ?
  • D’après vous, quelles sont vos avantages et défauts ?
  • Un dernier mot pour la fin ?

QUI ÊTES-VOUS ?

Bonjour à tous et à toutes et merci de m’accueillir aujourd’hui au Direct. Je m’appelle Docker et j’ai quatre ans. Mon père s’appelle Solomon Hykes, j’ai par la suite été adopté par la famille Docker, Inc. J’ai un frère et une soeur répondant au nom de Docker Compose et Docker Machine. Je suis un logiciel libre de création et gestion de conteneurs et fier de l’être !

QU’APPORTEZ-VOUS AU MONDE INFORMATIQUE ?

Ce que j’apporte est plutôt simple : permettre à n’importe qui d’exécuter un service, démarrage d’une base de données par exemple, sur n’importe quelle machine de manière transparente. Cela permet aux développeurs de collaborer plus facilement entre eux car chacun garde son environnement de développement et aux entreprises de déployer leurs solutions techniques de manière agile.

COMMENT EST-CE QUE CELA FONCTIONNE ?

Pour délivrer un tel service, j’utilise ce que j’appelle des conteneurs. Il s’agit d’une boite contenant tous les outils nécessaires (et uniquement ceux-ci dans l’idéal) permettant d’exécuter votre service. Grâce à ça, ces outils n’ont pas besoin d’être installé sur la machine dite hôte (celle qui contiendra les conteneurs). Pour créer des conteneurs, il suffit de me nourrir avec un Dockerfile, c’est un peu comme du plancton. Une fois le Dockerfile ingéré, je créerai un conteneur avec les paramètres fournis dans celui-ci. Un conteneur n’est construit qu’une seule fois et peut ensuite être répliqué à l’infini. Vous pouvez d’ailleurs me retrouver sur toutes les distributions Linux, Mac et Windows !

ON VOUS CONFOND SOUVENT AVEC VOTRE COUSIN VAGRANT, QU’AVEZ-VOUS À DIRE ?

Vagrant a beau être un cousin proche, nous sommes pourtant très différents. Vagrant est un outil permettant de créer et gérer des machines virtuelles. Contrairement à des conteneurs, la machine virtuelle embarque toute une distribution ce qui la rend beaucoup plus lourde et donc plus gourmande en ressource vis à vis de son hôte.

D’APRÈS VOUS, QUELS SONT VOS QUALITÉS ET DÉFAUTS ?

Pour être honnête, je ne pense pas avoir de défauts… mais si je devais être objectif :

  • QUALITÉS
    • On peut me prendre en main très rapidement et ma documentation est très complète.
    • Mes conteneurs et moi, nous livrons des services rapidement et efficacement peu importe l’adresse. En moins de trente minutes, sinon c’est gratuit !
    • Ta machine hôte reste vierge de toutes dépendances et librairies pour le développement, mis à part moi.
    • Si la scalabilité est un enjeu pour toi, je suis ta baleine.
  • DÉFAUTS
    • Un grand pouvoir implique de grandes responsabilités. Si tu souhaites faire des choses complexes, alors beaucoup de documentations tu liras.
    • J’ajoute une couche supplémentaire au dessus ton architecture.
    • Est-ce que tu as déjà travaillé avec baleine ? Je suis une nouvelle stack complète à apprendre pour toi.

UN DERNIER MOT POUR LA FIN ?

Même plusieurs, voici quelques conseils si vous souhaitez faire partie de l’aventure Docker :

  • Lors de la création d’un conteneur, une base est requise. Privilégiée la base Debian ou Alpine, car celles-ci sont légères.
  • On a parfois besoin d’exécuter plusieurs commandes pour démarrer un service. La solution dans un Dockerfile :
    • ENTRYPOINT [“MA_COMMANDE_1”]
    • CMD [“ARGS1”, “;”, “MA_COMMANDE_2”, “ARGS1”, “ARGS2”, etc]

 
Merci à toi Docker d’avoir répondu à nos questions. Si vous avez aimé cette interview, merci de la partager sur les réseaux sociaux pour vos amis, vos proches ou même votre chien qui sait.
Pour la prochaine fois nous aurons Heroku à l’antenne.
Guillaume, JS-Republicain @JSRepublic
[actionbox color=”default” title=”” description=”JS-REPUBLIC est une société de services spécialisée dans le développement JavaScript. Nous sommes centre de formation agréé. Retrouvez toutes nos formations techniques sur notre site partenaire dédié au Training” btn_label=”Nos formations” btn_link=”http://training.ux-republic.com” btn_color=”primary” btn_size=”big” btn_icon=”star” btn_external=”1″]