Vagabond

Tutoriel vagabond

Tutoriel vagabond
Vagrant est un outil de gestion de machines virtuelles à l'aide d'une simple interface de ligne de commande. Il est censé rendre l'ensemble du processus propre et net sans que votre installation principale ne soit polluée par une tonne de fichiers de configuration.Vagrant utilise VirtualBox dans le backend où les machines virtuelles s'exécutent et si vous ouvrez VirtualBox après avoir installé quelques-unes de ces Vagrant Box, vous verrez qu'il y a de nouvelles machines virtuelles qui n'étaient pas là avant. La boîte Vagrant n'est qu'un autre terme de machines virtuelles gérées spécifiquement par cet utilitaire dont nous discutons.

Pourquoi s'embêter?

Hashicorp, la société à l'origine de Vagrant, gère un référentiel de nombreux Boîtes de vagabonds qui sont des images de machines virtuelles préconfigurées à partir desquelles vous pouvez générer n'importe quel nombre de machines virtuelles localement. Il résout deux problèmes :

  1. Parce que tout le monde part de la même image, les développeurs peuvent se débarrasser de Il-fonctionne-sur-ma-machine excuse, où une certaine application fonctionnerait parfaitement sur une machine, mais pas sur une autre. Tout le monde développe sur des machines différentes mais s'exécute sur exactement la même configuration de machine virtuelle.
  2. Vous n'avez pas besoin de répéter l'installation des machines virtuelles si vous décidez de vous débarrasser des anciennes. Vagrant s'occupe de l'ensemble de l'installation et de la configuration de votre VM. Tout, de l'allocation de stockage et de mémoire à la création d'utilisateurs et à la configuration d'autorisations.

À bien des égards, il est similaire aux images Docker et il résout des problèmes similaires, la principale différence étant qu'il utilise des machines virtuelles au lieu de conteneurs, ce qui en fait une alternative résolument plus lourde et plus lente. Cependant, les machines virtuelles ont leurs propres avantages, comme une meilleure pile de mise en réseau et plus de flexibilité en termes de choix de système de fichiers, etc., permettant à Vagrant de remplir un créneau particulier des machines virtuelles portables.

Alors, commençons!

Conditions préalables

La première et principale exigence est l'installation de VirtualBox, après quoi vous devez installer Vagrant. Si vous avez déjà installé VirtualBox, récupérez simplement ce dernier. Le processus d'installation peut varier considérablement en fonction du système d'exploitation que votre hébergeur exécute, je vous invite donc à consulter la documentation officielle pour cela :

  1. Obtenez VirtualBox ici
  2. Obtenez Vagrant ici

De plus, si vous utilisez Windows, vous aurez besoin d'un client SSH, vous voudrez peut-être installer Git Bash qui fonctionne parfaitement sous Windows avec les options d'installation par défaut.

1.  Boîtes de vagabonds

Vagrant Box est le terme désignant les machines virtuelles gérées par Vagrant. Vous pouvez obtenir des boîtes Vagrant qui contiennent uniquement le système d'exploitation comme Ubuntu, CentOS, etc. Ou ils peuvent contenir une pile LAMP préconfigurée, une pile MEAN ou une autre installation logicielle qui pourrait faciliter votre processus de développement et de test.

Par exemple, si vous écrivez un thème WordPress, vous pouvez obtenir une boîte Vagrant avec le noyau WordPress déjà exécuté dessus. Vous pouvez partager votre dossier de projet où vous avez le contenu de votre thème avec cette VM. Vérifiez si le nouveau thème fonctionne comme prévu. Une fois que vous avez terminé avec le thème, détruisez simplement la boîte en ne laissant que les fichiers de projet dont vous savez maintenant qu'ils fonctionneraient bien dans le monde réel.

Vous pouvez explorer ces boîtes ici. Nous allons commencer avec un simple Ubuntu 16.04 Coffret LTS. Vous pouvez le voir répertorié comme ubuntu/xenial64, si vous visitez le lien ci-dessus.

Ouvrez votre terminal et créez un dossier pour vos expériences Vagrant.

$ mkdir vagrant_box
$ cd vagrant_box

Dans ce dossier, nous pouvons initialiser notre environnement Vagrant en exécutant :

$ vagabond init

Cela place un Vagrantfile dans le dossier qui est essentiellement un script Ruby décrivant la configuration de votre Vagrant Box. Vous n'avez pas besoin de connaître Ruby pour utiliser ce fichier, la syntaxe est assez simple. Nous couvrirons l'essentiel au fur et à mesure.

Maintenant, vous pouvez exécuter la commande vagrant up et parce que vous l'exécutez pour la première fois, il devra télécharger l'image de la machine virtuelle à partir de l'application.vagabond.com. Cela peut prendre un certain temps en fonction de votre connexion Internet, mais une fois téléchargé, les vagabonder commandes similaires vagrant init ubuntu/xenial64 ne prendra pas si longtemps car l'image est maintenant enregistrée localement sur votre ordinateur. Assurez-vous que vous êtes dans le même répertoire (vagabond_box) où Vagrantfile a été placé plus tôt.

$ vagabond

Une fois cette opération terminée, vous pouvez ssh dans la boîte en tant qu'utilisateur vagabond avec les privilèges root. Exécutez simplement ce qui suit :

$ vagabond ssh

félicitations! Vous venez de vous connecter à votre première Vagrant Box. Maintenant que tout a commencé, apprenons quelques commandes de base pour les vagabonds avant de nous plonger dans le Vagrantfile. Tapez simplement exit et appuyez sur pour quitter le terminal de la VM. La boîte de vagabond fonctionnera toujours en arrière-plan.

Commande commune de vagabond

Si vous souhaitez arrêter la box en cours d'exécution, exécutez la commande :

$ halte vagabonde

Pour redémarrer, vous pouvez utiliser vagrant up

Si vous le souhaitez, vous pouvez également utiliser

$ vagabond suspendre
$ CV vagabond

Ceux-ci suspendront la VM et la ramèneront en toute sécurité. Si vous apportez des modifications au fichier Vagrant et souhaitez que les modifications s'affichent, utilisez la commande :

$ vagabond recharge

N'oubliez pas d'exécuter toutes les commandes à partir du même répertoire où se trouve votre Vagrantfile. Vous pouvez créer plus de boîtes vagabondes si vous créez de nouveaux répertoires ailleurs et exécutez init vagabond  en eux. Vous les gérerez depuis leurs dossiers respectifs. Ils peuvent être basés sur le même ubuntu/xenial image que nous avons obtenue plus tôt, ou vous pouvez apporter plus d'image.

Pour lister toutes les boîtes vagabondes et leur statut (en cours d'exécution, ou arrêté), utilisez la commande :

$ vagabond global-statut

Pour supprimer une boîte de vagabondage et tout son contenu privé, à partir du répertoire de la boîte (où se trouve son Vagrantfile respectif), exécutez :

$ vagabond détruire

L'image de base que vous avez téléchargée précédemment existera toujours si vous souhaitez créer de nouvelles boîtes plus tard. Si vous souhaitez voir toutes les images enregistrées localement, exécutez :

$ liste de boîtes de vagabond

Pour supprimer l'image de la boîte elle-même, exécutez :

$ boîte de vagabond supprimer

Après cela, vous devrez télécharger à nouveau la boîte, en cas de besoin.

Inspection du Vagrantfile

À première vue, il peut sembler qu'il y a beaucoup d'options dans un Vagrantfile. Bien que cela puisse très bien être vrai, il est intéressant de noter tout ce que vous pouvez accomplir avec seulement un peu de peaufinage.

1.   Le dossier partagé

La plupart des boîtes de vagabondage sont livrées avec des dossiers partagés préconfigurés. Par exemple, si vous inspectez le Vagrantfile que nous avons créé la toute première fois que nous avons exécuté init vagabond vous remarquerez l'entrée, qui est une ligne commentée,

# configuration.vm.synced_folder "… /data", "/vagrant"

Le dossier synchronisé est accessible à la fois par la boîte vagrant et la machine hôte. Le premier argument après configuration.vm.dossier_synchronisé indique le chemin d'accès au dossier sur l'hôte et le deuxième argument indique le chemin où ce dossier sera monté sur la boîte de vagabondage invité. Par défaut, le dossier dans lequel vous avez créé le Vagrantfile est également partagé avec la vagrant box.

Vérifions cela, en ssh-ing dans notre boîte de vagabond.

$ vagabond ssh

Ici, listez les systèmes de fichiers.

$ df -h

Vous pouvez voir qu'il existe un grand système de fichiers vagabond monté sur /vagabond chemin. La raison pour laquelle il est si volumineux est que le dossier Vagrantfile sur ma machine hôte se trouve sur une partition de 632 Go et que le dossier là-bas peut également atteindre cette taille. Comme il s'agit du même dossier qui est partagé avec la boîte, il offre une quantité incroyable de stockage.

Vous pouvez inspecter le contenu de /vagabond et ce sont les mêmes que vous voyez sur votre hôte, à savoir un Vagrantfile et un autre fichier journal.

Vous pouvez ajouter plus de dossier partagé où le commentaire expliquant la syntaxe du dossier partagé apparaît.

Ainsi,

Dans ce cas, un dossier nommé Dossier partagé est en train d'être ajouté, qui est un répertoire au-dessus, d'où le double point avant. Ce dossier est monté sur /var/www/html  à l'intérieur de la boîte. C'est là que la plupart des serveurs Web comme Apache et Nginx recherchent le contenu Web qu'ils souhaitent servir.

Vous pouvez simplement avoir vos fichiers de projet, votre html, css et js dans Dossier partagé où vous travaillez dessus sur votre machine hôte en utilisant des éditeurs de texte graphiques comme Atom et VSCode . La boîte de vagabond agira en tant que serveur de qualité de production qui servirait ces fichiers.

Maintenant, la question est de savoir comment voyons-nous ces fichiers html être servis en tant que page Web. Quel nom d'hôte saisir dans le navigateur?

2.   La mise en réseau

Par défaut, vagrant fournit quelques configurations utiles. La requête envoyée par votre navigateur à localhost sur le port 8080 est transmise au port 80 de votre box vagrant. Donc, si vous avez un serveur Web en cours d'exécution sur votre boîte vagrant qui écoute sur le port 80 (port http standard), vous pouvez voir cette page Web en visitant http://localhost:8080

D'un autre côté, vous voudrez peut-être éviter tout transfert de port localhost, auquel cas, vous pouvez ouvrir le fichier Vagrant et décommenter la ligne suivante :

configuration.vm.réseau "réseau_privé", ip: "192.168.33.dix"

Enregistrez les modifications que vous avez apportées et exécutez recharge de vagabond pour redémarrer la box avec une nouvelle configuration. Maintenant, il a une adresse IP privée dédiée 192.168.33.10 auquel seul votre hébergeur peut accéder. Vous pouvez donc maintenant ouvrir le navigateur et entrer http://192.168.33.10 et vous pouvez voir les pages Web servies sur le port standard 80 de http.

Conclusion

Comme vous pouvez le voir, Vagrant peut vous aider à exécuter vos applications localement comme elles le feraient en production en même temps que vous pouvez travailler avec eux en utilisant des IDE et des éditeurs de texte que vous n'auriez pas sur un serveur typique. L'utilisation de dossiers partagés et de réseaux privés améliore considérablement cette capacité de Vagrant.

Faites-nous savoir si vous avez d'autres questions concernant ce tutoriel, ou s'il y a un autre sujet que vous souhaitez que nous abordions.

Bataille pour Wesnoth 1.13.6 Développement publié
Bataille pour Wesnoth 1.13.6 publiée le mois dernier, est la sixième version de développement de la 1.13.x series et il apporte un certain nombre d'am...
Comment installer League Of Legends sur Ubuntu 14.04
Si vous êtes fan de League of Legends, alors c'est l'occasion pour vous de tester League of Legends. Notez que LOL est pris en charge sur PlayOnLinux ...
Installez le dernier jeu de stratégie OpenRA sur Ubuntu Linux
OpenRA est un moteur de jeu de stratégie en temps réel libre/gratuit qui recrée les premiers jeux Westwood comme le classique Command & Conquer: Red A...