Skip to main content

Manque de ressources sur votre machine distante ? Besoin de reproduire votre environnement de production au cours du développement d’une application ? Il vous est sans doute arrivé un bug au cours d’un développement (en production ou staging) et que vous n’arriviez pas à reproduire sur votre machine en local. Via la virtualisation, Vagrant vous permet de reproduire le même environnement de développement que sur vos serveurs. Vagrant est un logiciel libre et open-source permettant de créer des machines virtuelles pendant le développement de votre application afin d’obtenir l’environnement souhaité sans pour autant changer la configuration de votre machine. Le but étant de travailler, en développement, dans le même environnement qu’en production ou en staging.

Ah au fait, Vagrant n’est pas appelé à être utiliser en environnement de production. Il aide plutôt à simuler un environnement de production pour de la pré-production ou du développement.

En ma qualité de padawan devops (padawan = apprenti), je travaille sous environnement linux essentiellement (pro et fou de debian), mais j’ai aussi Windows installé en dual boot, ma machine pour frimer est un MacOS, mon serveur maison est sous ubuntu mais mon dédié et mes VPS sont sous Debian 8 (pour la plupart) et j’ai un autre virtual server sous Archlinux (encore en test). Donc pour utiliser Vagrant je suis suffisamment armé avec mes ordinateurs  pour avoir le même environnement qu’en production.

L’on pourrait se demander la raison d’être de Vagrant, alors qu’avec Virtualbox et VMWare, on peut avoir l’environnement souhaité et même plusieurs. C’est vrai. Mais avec ces deux là, vous aurez à configurer chaque environnement, prendre du temps pour installer vos apps et patati patata alors qu’avec Vagrant, avec un simple fichier de configuration et quelques commandes, vous avez le système et l’environnement désirés, un genre de  Many-to-one 😂 ( les développeurs java ou python me tuez pas).

Vagrant offre comme avantages de la simplicité, la portabilité des VMs, la légèreté (comparé aux VMs  installés avec VMware ou Virtualbox…) et également de la facilité à reproduire ou dupliquer un même environnement plusieurs fois.

Il existe quelques tutos intéressants sur Vagrant, mais le premier qui m’a aidé est celui de Synbioz ensuite j’ai été chez mon meilleur ami Youtube car je préfère voir et appliquer que lire et m’embrouiller.

NB : cet article est juste une présentation de Vagrant. Je prépare un lab conséquent sur le sujet. J’ai même loué un serveur dédié pour l’occasion. Euh oui… j’aime trop travailler à distance. Avec l’instabilité de l’énergie électrique par ici, j’ai déjà eu deux machines cramées.