Dans l'article précédent, nous avons vu comment faire tourner une machine virtuelle à l'aide de vagrant. Dans cet article, nous nous concentrerons sur la personnalisation du fichier vagrant en fonction de nos besoins et verrons les commandes importantes pour travailler avec le vagrant.
Créer un nouveau répertoire de projet Vagrant
Permettez-moi de créer un nouveau dossier de projet "vagrant_testing " et sous cette exécution, le vagrant init commande pour configurer un nouveau projet.
$ mkdir ~/vagrant_testing $ vagrant init -m "ubuntu/focal64"
À partir de l'image ci-dessous, vous pouvez voir que j'ai créé un fichier de configuration minimal en utilisant le -m
drapeau avec vagrant init commande.
$ cat Vagrantfile
Modifions et ajoutons maintenant les paramètres suivants à notre fichier vagabond.
# -*- mode: ruby -*- # vi: set ft=ruby : Vagrant.configure("2") do |config| config.vm.box_check_update = false config.vm.allow_hosts_modification = true config.vm.define "ubuntu" do |vmbox| vmbox.vm.box = "ubuntu/focal64" vmbox.vm.define "Ubuntu" vmbox.vm.hostname = "shelltips-vagrant" vmbox.vm.network "public_network", bridge: "Intel(R) Dual Band Wireless-AC 7265", ip: "192.168.1.100" vmbox.vm.synced_folder ".", "/vagrant/", disabled: true vmbox.vm.synced_folder "/home/karthick/shelltips", "/vagrant/shelltips", disabled: false vmbox.vm.provider "virtualbox" do |vmvbox| vmvbox.memory = "2048" vmvbox.cpus = 2 end end end
Laissez-moi vous expliquer l'utilisation de tous ces paramètres.
config.vm.box_check_update =false | Désactiver la vérification des mises à jour au démarrage |
config.vm.allow_hosts_modification =true | Autoriser vagrant à mettre à jour le fichier /etc/hosts |
vmbox.vm.box ="ubuntu/focal64" | Box que vous devez télécharger et utiliser |
vmbox.vm.define "Ubuntu" | Nom de la machine virtuelle. "Par défaut" sera attribué si vous ne définissez pas le nom. |
vmbox.vm.hostname ="shelltips-vagrant" | Configuration du nom d'hôte pour votre machine virtuelle |
vmbox.vm.synced_folder ., "/vagrant", désactivé :vrai vmbox.vm.synced_folder "/home/karthick/shelltips", "/vagrant/shelltips", désactivé :faux | Configuration du dossier synchronisé. Désactivation du dossier synchronisé par défaut et ajout de mon dossier personnalisé. Vous devez définir "désactivé :vrai/faux" pour activer ou désactiver les dossiers partagés. |
vmbox.vm.network "public_network", pont :"Intel(R) Dual Band Wireless-AC 7265", IP :"192.168.1.100" | Configuration de mon réseau virtuel en mode adaptateur ponté et attribution d'une adresse IP. Virtualbox dispose de cinq modes de mise en réseau différents et vous pouvez choisir celui qui convient à votre utilisation cas. |
vmbox.vm.provider "virtualbox" do |vmvbox| | Définir la mémoire et les cœurs de processeur pour ma machine virtuelle |
Maintenant, si je lance le vagabond commande, il configurera ma machine virtuelle en fonction du paramètre personnalisé que j'ai déclaré dans le fichier vagrant.
SSH vers une machine virtuelle Vagrant
Maintenant, pour vous connecter à la machine virtuelle, exécutez simplement le "vagrant ssh " commande. Si vous avez plusieurs machines, vous pouvez vous connecter à la machine spécifique en utilisant son ID ou son nom. Vous pouvez obtenir ces informations à partir du statut global commande.
$ vagrant ssh $ vagrant ssh [id|name]
Le nom d'hôte est également mis à jour et l'adresse IP spécifiée dans le fichier vagabond est également créée.
$ ip a s $ hostname
Une fois que votre machine virtuelle vagabonde est en place, vous pouvez accéder à votre gestionnaire d'interface graphique de virtualbox et vérifier si toutes les configurations sont conformes à la valeur définie.
Maintenant, si vous souhaitez activer l'authentification par mot de passe pour votre machine virtuelle, exécutez la commande suivante dans votre machine virtuelle. Cela définira l'authentification par mot de passe sur true.
$ sudo sed -i "/^[^#]*PasswordAuthentication[[:space:]]no/c\PasswordAuthentication yes" /etc/ssh/sshd_config $ sudo service sshd restart
Maintenant, au lieu d'exécuter vagrant ssh , vous pouvez exécuter la commande de connexion ssh traditionnelle.
$ ssh [email protected] ⇒ Bridged Network $ ssh vagrant@localhost -p 2222 ⇒ Nat Network
Pour arrêter une machine virtuelle en cours d'exécution, exécutez la commande suivante.
$ vagrant halt ⇒ Gracefully shutdown the VM $ vagrant suspend [name|id] ⇒ Put the Machine into a suspended state $ vagrant resume [name|id] ⇒ Resume the suspended VM
Vous avez maintenant une machine en marche. Si vous décidez soudainement de modifier un paramètre dans votre fichier de configuration vagabond, vous devez recharger la machine.
$ vagrant reload
La commande vagrant reloads arrête la machine virtuelle avec élégance et affiche la machine virtuelle avec de nouvelles configurations, le cas échéant.
Mettre à jour la boîte de vagabond
Vous pouvez vérifier si votre box est à jour en exécutant la commande suivante.
$ vagrant box outdated --global ==> check for an outdated version of all boxes in your machine
Pour télécharger les mises à jour, exécutez la commande suivante. Un point important à noter ici est que les mises à jour ne seront pas appliquées à la boîte actuelle que vous utilisez. Vous devez détruire votre boîte actuelle et faire tourner la nouvelle boîte mise à jour téléchargée.
$ vagrant box update --box ubuntu/focal64 --provider Virtualbox
Détruire la boîte de vagabond
Pour détruire une boîte de vagabonds, lancez la commande vagrant destroy commande, qui supprimera tous les fichiers, y compris les images de disque, mais ne supprimera pas la boîte téléchargée du site vagabond.
$ vagrant destroy [name|id]
Supprimer la boîte de vagabond
Pour supprimer la boîte de vagabonds, procédez comme suit :
$ vagrant box remove ubuntu/focal64
Dans le prochain article, nous verrons comment utiliser les shell provisioners et automatiser le déploiement de vos vagrant boxes.