Vagranti è uno strumento da riga di comando per la creazione e la gestione di macchine virtuali.
Per impostazione predefinita, Vagrant può eseguire il provisioning di macchine su VirtualBox, Hyper-V e Docker. Altri provider come Libvirt (KVM), VMware e AWS possono essere installati tramite il sistema di plug-in Vagrant.
Vagrant viene in genere utilizzato dagli sviluppatori per configurare un ambiente di sviluppo che funzioni su più sistemi operativi.
Questo articolo descrive come installare Vagrant su una macchina Ubuntu 20.04. Useremo VirtualBox, che è il provider predefinito per Vagrant.
Installazione di Vagrant su Ubuntu #
Forniremo le macchine virtuali su VirtualBox.
Se VirtualBox non è installato sul tuo sistema puoi installarlo eseguendo:
sudo apt update
sudo apt install virtualbox
Il pacchetto Vagrant, disponibile nei repository di Ubuntu, non viene aggiornato regolarmente. Scaricheremo e installeremo l'ultima versione di Vagrant dal sito ufficiale di Vagrant.
Al momento della stesura di questo articolo, l'ultima versione stabile di Vagrant è la versione 2.2.9. Visita la pagina dei download di Vagrant per vedere se è disponibile una nuova versione di Vagrant.
Scarica il pacchetto Vagrant con wget
:
curl -O https://releases.hashicorp.com/vagrant/2.2.9/vagrant_2.2.9_x86_64.deb
Una volta scaricato il file, installalo digitando:
sudo apt install ./vagrant_2.2.9_x86_64.deb
Per verificare che l'installazione sia andata a buon fine, esegui il seguente comando che stamperà la versione di Vagrant:
vagrant --version
L'output dovrebbe essere simile a questo:
Vagrant 2.2.9
Iniziare con Vagrant #
Creare un progetto Vagrant è semplice come impostare la directory principale del progetto e definire un file Vagrant.
Esegui i seguenti comandi per creare la directory e cdinto con:
mkdir ~/my-vagrant-project
cd ~/my-vagrant-project
Quindi, inizializza un nuovo Vagrantfile usando vagrant init
comando, seguito dalla casella che desideri utilizzare.
Le scatole sono il formato del pacchetto per gli ambienti Vagrant e sono specifiche del provider. Puoi trovare un elenco di Scatole Vagrant pubblicamente disponibili nella pagina del catalogo Scatole Vagrant.
In questo esempio useremo centos/8
casella:
vagrant init centos/8
A `Vagrantfile` has been placed in this directory. You are now
ready to `vagrant up` your first virtual environment! Please read
the comments in the Vagrantfile as well as documentation on
`vagrantup.com` for more information on using Vagrant.
Vagrantfile è un file Ruby che descrive come configurare e fornire la macchina virtuale. Puoi aprire il Vagrantfile, leggere i commenti e apportare modifiche in base alle tue esigenze.
Esegui il vagrant up
comando per creare e configurare la macchina virtuale come specificato nel Vagrantfile:
vagrant up
==> default: Configuring and enabling network interfaces...
default: SSH address: 192.168.121.74:22
default: SSH username: vagrant
default: SSH auth method: private key
==> default: Rsyncing folder: /home/linuxize/Vagrant/my-vagrant-project/ => /vagrant
Vagrant monta la directory del progetto su /vagrant
nella macchina virtuale. Ciò ti consente di lavorare sui file del tuo progetto sul tuo computer host.
Per entrare nella macchina virtuale, esegui:
vagrant ssh
Puoi fermare la macchina virtuale con il seguente comando:
vagrant halt
Per distruggere tutte le risorse create durante la creazione della macchina, inserisci:
vagrant destroy