Docker en 2 minutes
Les bases de docker en 2 minutes !
DONNE MOI LE RĂSUMĂSi je vous dis conteneur, il yâa de grande chance que vous me rĂ©pondiez : docker, lâoutil le plus utilisĂ© en entreprise.
Docker est un outil parmi tant dâautres de conteneurisation, dĂ©veloppĂ© avec le langage GO et publiĂ© en 2013 et aujourdâhui leader du marchĂ© avec plus de 50 millions de dollars gĂ©nĂ©rĂ© chaque annĂ©e.
Ok, mais pourquoi on a besoin de docker ?
Lorsque des devs Ă©crivent du code, UN moment est plus redoutĂ© que tous les autres : le dĂ©ploiement. Le code Ă©crit sur une machine ne fonctionne pas toujours sur une autre, et câest le bordel.
Comment faire ? Il suffit simplement de dĂ©ployer sur la machine du dĂ©veloppeur nan ? Ăvidemment pas physiquement dessus, mais plutĂŽt trouver un moyen de dupliquer son PC. En gros, on veut âvirtualiserâ lâordinateur du dev, pour le dupliquer partout sur nâimporte quelle machine.
Lorsque lâon parle virtualisation, deux choix sâoffrent Ă nous : construire des VM, lourdes qui dupliquent lâOS, avec son kernel ou des conteneurs, qui se base eux directement sur lâOS de leur machine hĂŽtes, tels des parasites.
Pour créer un conteneur, il nous faut une image et pour créer une image, il nous faut un Dockerfile.
Un Dockerfile est comme le script dâune scĂšne de film. On y dĂ©finit les acteurs, les costumes, les dĂ©corations, etc.
Lâimage, elle, est construite Ă partir du Dockerfile. Ă partir du script, on place les acteurs et les Ă©lĂ©ments dans le dĂ©cor. Tout est prĂȘt pour ĂȘtre jouĂ©.
Le conteneur est alors la scĂšne jouĂ©e Ă un moment donnĂ© que lâon peut rĂ©pliquer Ă lâinfinie.
Pour créer une image docker, il nous faut créer un fichier Dockerfile.
Les images sont extensibles et nous pouvons nous baser sur des images développées par des leaders du marché.
Chaque image dans un Dockerfile est crĂ©Ă© par le mot FROM suivit du nom de lâimage que lâon veut Ă©tendre ou de scratch pour crĂ©er une image nu.
On peut exĂ©cuter des commandes avec le mot clef RUN et copier des fichiers depuis lâordinateur local sur lâimage avec la commande COPY
Chaque fichier docker finit gĂ©nĂ©ralement par une commande que lâon veut lancer par dĂ©faut au lancement du conteneur. On dĂ©finit lâexĂ©cutable avec ENTRYPOINT et les paramĂštres avec CMD.
Pour construire lâimage Ă partir du dockerfile, on utilise la commande docker build . .
Pour lancer le conteneur Ă partir de lâimage, on utilise la commande docker run IMAGE.