dimanche 23 novembre 2014

[Vagrant]Créer un entrepôt de box - partie 3 - Utilisation

Prérequis

Parcourir l'entrepôt de boxs:

Descendre une box sur son poste :

  • télécharger et placer le fichier Vagrantfile d'une box dans un répertoire du poste hôte.
  • dans ce répertoire lancer la commande :
vagrant up
=> La box est téléchargée (sur la base du fichier JSON, en prenant la dernière version), décompressée, stockée en repository local, un vm est créée avec cette box, la vm est démarrée, les configuration du Vagrantfile sont appliquées.

Packager une box et la versionner

  • stopper la VM
vagrant halt
  • packager
vagrant package --output <nomdlabox>_AA.MM.JJ.box
  • Copier le fichier box (et éventuellement le fichier Vagrantfile) dans l'entrepôt de box (sur serveur)
  • Mettre à jour le fichier json en conséquence

Vérifier l'état des versions locales vis à vis du repository serveur

vagrant box outdated
Exemple de résultat :
Checking if box 'lifeplus' is up to date...
A newer version of the box 'lifeplus' is available! You currently
have version '14.2.25'. The latest is version '14.10.21'
Run `vagrant box update` to update.

Updater sa box locale et Reconstruire une VM

  • Pour updater la box locale t:
vagrant box update
ou
vagrant box update --box '<nombox>'

Note : cela ne fera que descendre une nouvelle version de box, et ne supprimera pas la version précédente de votre entrepôt local ni la/les instances de vm basées sur cette version précédente. (voir les commande suivantes pou cela)
  • Pour lister les boxs locales (et leur versions)
vagrant box list
  • Pour supprimer sa vm (depuis le dossier du projet)
vagrant destroy

Note : cela ne supprimera pas le fichier Vagrantfile présent dans le dossier, ce qui peut être pratique pour recréer un VM (vagrant up)
  • Pour supprimer une version de box présente en local
vagrant box remove '<nombox>' --box-version '14.2.25'
Icon
note : il est conseillé de supprimer les VM instanciées à partir de cette box avant de la supprimer.
  • Recréer une VM à partir d'une nouvelle version de box, (méthode recommandée)
Dans le dossier du projet et si vous avez conservé ou redownloadé le fichier Vagrantfile de la box
vagrant up
  • Recréer une VM à partir d'une nouvelle version de box, dans un nouveau dossier projet, 
Dans un nouveau dossier projet et si vous l'avez déjà "descendue" dans votre entrepôt local (via "vagrant box update")
vagrant init <nombox>
puis
vagrant up

Note : l'inconvénient de cette méthode est qu'elle obfusque le fichier Vagrantfile de la box, en exposant dans le dossier du projet un Vagrantfile "enfant", sans les paramètres du Vagrantfile de la box (qui est cependant chargé en priorité)

Aucun commentaire:

Enregistrer un commentaire