Vagrant comment ça marche

Vagrant comment ça marche

21 Jan 2014 |  Linux

Si vous avez lu l’article précédent sur le même sujet, nous avons conclu sur le fait que Vagrant avait toutes les fonctionnalités nécessaires pour construire un environnement de travail digne de ce nom. Dans cet article nous allons voir à quoi sert le fichier “Vagrantfile” et comment Vagrant fonctionne.

Le principe

Pour fonctionner, Vagrant à besoin de deux choses. La première est un fichier de configuration nommé “Vagrantfile” dans lequel reside toute la configuration de la machine virtuelle et une box qui n’est autre qu’un système d’exploitation vierge, prèt à l’emploi.

Le fichier Vagrantfile contient toutes les informations utiles à la machine, mémoire allouée, transfert de port, attribution d’une adresse réseau afin qu’à chaque démarrage, la machine virtuelle soit configurée selon vos souhaits. Notez qu’il ne peut y avoir qu’un seul fichier de configuration par repertoire. L’avantage majeure de sauvegarder les propriétés de la machine dans un fichier est que cela devient facilement versionable et donc réutilisable.

Comme évoqué précédement, Vagrant à besoin d’une Box pour fonctionner. Il s’agit en fait d’un système d’exploitation installé, configuré et packagé dans un format spécifique. Vous pouvez utilisez les boxes officiels ou télécharger des boxes crées par d’autres personnes sur ce site - http://vagrantbox.es - qui regroupe la plupart de solution qui s’offrent à vous. Toute fois, vous pouvez générer votre propre box grâce à Veewee

Au premier démarrage de votre machine virtuelle, le fichier de configuration sera lu et Vagrant détectera alors, s’il dispose des sources de la box que vous voulez utiliser. Si ce n’est pas le cas, il les téléchargera via l’url que vous aurez configuré dans le fichier Vagrantfile et vous n’aurez rien à faire, si ce n’est allez boire un café. Ceci est encore un autre avantage, surtout si vous travaillez en équipe, pas besoin de s’occuper du système d’exploitation, de savoir ou il est et si tout le monde utilise la même version, car tout le monde utilisera la même box.

Spécifier une box

Dans votre fichier Vagrantfile, vous pouvez attribuer un nom à la box que vous voulez utiliser. Ce nom sera associé a la box qui sera télécharger, ce qui vous permettra par la suite de pouvoir la réutiliser pour une autre machine virtuelle.

Vagrantfile

config.vm.box = "precise64"

En plus du nom, vous pouvez donc ajouter une url afin de permettre à Vagrant de télécharger votre box lors de l’initialisation de votre machine.

Vagrantfile

config.vm.box_url = "http://files.vagrantup.com/precise64.box"

Parce qu’un schéma est toujours plus parlant, voici une idée de comment ça fonctionne :

Quick tour

La force de Vagrant provient aussi de son interface en ligne de commande, qui est vraiment simple et efficace à utiliser. Si vous voulez avoir un apercu de toutes les commandes, il vous suffit de taper :

$vagrant help

Vous trouverez sur le site ou via l’aide toutes les commandes disponibles, néamoins voici une petite liste des plus utiles :

Initialisation

$ vagrant init

Utile pour initialiser un nouvel environnement, cela vous créera un fichier Vagrantfile s’il n’y en a pas déjà un dans votre répertoire.

Démarrage

$ vagrant up

Certainement la commande que vous utiliserez le plus souvent, elle vous permettra de démarrer vos machines virtuelles.

Arrêt

$ vagrant halt

Cette commande vous permettra d’arrêter une machine en cours de fonctionnement. Pour redemmarer une machine arrêtée, utilisez la commande vagrant up.

Rechargement

$ vagrant reload

Cette commande permet de redemarrer un système en cours de fonctionnement. C’est l’équivalent d’un arrêt et demarrage.

Pause

$ vagrant suspend

La commande de pause permet de sauvegarder la machine dans l’état courrent et de l’arrêter, c’est un peu comme une mise en veille. Pour retrouver votre machine comme vous l’aviez laissez, utilisez la commande vagrant up.

SSH

$ vagrant ssh

Cela vous permettra de vous connected en SSH à la machine virtuelle. Personnellement, je n’utilise pas plus de 3 de ces commandes chaques jours, vagrant up, vagrant ssh, vagrant suspend.

Mon allié dans la bataille

Après plus d’un an d’utilisation, je suis plus que convaincu de cet outil et de son utilité. Ça fonctionne bien, ça fait le travail que c’est sensé faire et c’est vraiment simple à utiliser ! Pour moi cet outil à encore plus d’intérêt pour une utilisation en équipe. Maintenant que je vous ai expliqué les principes de fonctionnement de Vagrant et que j’ai tout fait pour vous convaincre, je vous expliquerai dans un prochain article, pourquoi vous devriez l’utilisez.

Julien Dubreuil

Vous avez une idée, un projet web à réaliser ?

Ensemble, mettons en oeuvre sa réussite. Je vous accompagne dans vos projets, depuis l'élaboration du cahier des charges jusqu'à la mise en production. Pour plus d'information n'hésitez pas à me contacter.

Contactez-moi