V naslednjem članku si bomo ogledali Vagrant. To je orodje ukazne vrstice za ustvarjanje in konfiguriranje virtualiziranih razvojnih okolij. Omogočil nam bo določitev storitev za namestitev in njihove konfiguracije. To orodje je zasnovano za delo v lokalnih okoljih in ga lahko uporabljamo s skripti lupine, Chef, Lutka ali Ansible.
Privzeto, Vagrant lahko priskrbi stroje na VirtualBox, Hyper-V in Docker. Preko dodatnega sistema je mogoče namestiti tudi druge ponudnike, kot je Libvirt (KVM), VMware in AWS.
Kot sem že omenil, nam Vagrant pomaga pri ustvarjanju in konfiguriranju virtualnih strojev z določenimi funkcijami in komponentami. Velika prednost te programske opreme je, da ima konfiguracijsko datoteko, imenovano Vagrantfile, kjer je vsa konfiguracija VM-ja, ki ga želimo ustvariti, centralizirana. Datoteko Vagrant lahko uporabimo za ustvarjanje VM popolnoma enako, kolikor želimo. Je tudi super lahek, zato ga lahko dodamo v svoj repo ali pošljemo sodelavcem po e-pošti.
Razvijalci praviloma uporabljajo Vagrant za nastavitev razvojnega okolja, ki deluje na več operacijskih sistemih. Deluje lahko na Gnu / Linux, Mac ali Windows. Oddaljena razvojna okolja prisilijo uporabnike, da se odrečejo svojim najljubšim urejevalnikom in programom. Vagrant deluje na lokalnem sistemu z orodji, ki jih že poznamo.
V naslednjih vrsticah bomo videli kako namestiti Vagrant na računalnik Ubuntu 20.04. Za to bomo uporabili VirtualBox, ki je privzeti ponudnik.
Namestite Vagrant na Ubuntu
Prvi korak bo, kot ponavadi, prenos in namestitev orodja, v tem primeru pa bomo morali namestiti tudi ponudnika navideznih strojev, ki ga želimo uporabiti. To bo privzeto VirtualBox, saj je brezplačen in je vgrajen v Vagrant.
Si VirtualBox ni nameščen v vašem sistemu, lahko ga namestite tako, da odprete terminal (Ctrl + Alt + T) in zaženete ukaze:
sudo apt update; sudo apt install virtualbox
Ko pišem te vrstice, je najnovejša stabilna različica Vagranta 2.2.9. Za prenos uporabniki lahko obiščejo stran za prenos ali preverite, ali je na voljo nova različica. Lahko tudi zaženite wget s terminala (Ctrl + Alt + T), da prenesete paket .deb potrebno:
wget https://releases.hashicorp.com/vagrant/2.2.9/vagrant_2.2.9_x86_64.deb
Ko je prenos končan, lahko namestite paket tipkanje v terminalu:
sudo apt install ./vagrant_2.2.9_x86_64.deb
Ko je namestitev končana, lahko z izvajanjem naslednjega ukaza, ki se bo natisnil, preverimo, ali je bilo vse pravilno nameščena različica:
vagrant --version
Comenzando
ustvariti projekt Vagrant je tako preprost kot nastavitev korenskega imenika projekta in definiranje datoteke Vagrant.
Za začetek morate le zagnati naslednje ukaze ustvarite imenik in nato dostopajte:
mkdir ~/mi-proyecto-vagrant cd ~/mi-proyecto-vagrant
Zdaj pa pojdiva z ukazom ustvarite novo datoteko Vagrant potepuški init, čemur sledi polje, ki ga želimo uporabiti.
Polja so oblika paketa za okolja Vagrant in so odvisna od prodajalca. Mogoče najti seznam škatlic za potepuhe, ki je javno dostopen na Katalog škatel.
V tem primeru bom uporabil polje debian / stretch64:
vagrant init debian/stretch64
Vagrantfile je datoteka Ruby, ki opisuje, kako konfigurirati in zagotoviti navidezni stroj. Uporabniki lahko odpremo vagrantfile, preberite komentarje in prilagodite glede na potrebe vsakega posebej.
Zdaj bomo izvršili ukaz vagrant gor za ustvariti in konfigurirati navidezni stroj:
vagrant up
Vagrant namesti projektni imenik na / potepuh v navideznem stroju. To nam bo omogočilo delo z našimi projektnimi datotekami na našem gostiteljskem računalniku.
za dostop do navideznega stroja, izvedli bomo:
vagrant ssh
Ko smo v njem, lahko naredimo spremembe, ki nas zanimajo:
Lahko ustavite navidezni stroj kadar koli želimo z naslednjim ukazom:
vagrant halt
za uničiti vse vire, ustvarjene med ustvarjanjem stroja, uporabljeni ukaz bo:
vagrant destroy
In na splošno s tem smo videli, kako namestiti Vagrant na Ubuntu 20.04 in ustvariti osnovni projekt. Uporabniki, ki jo potrebujejo, lahko dobijo več informacij o namestitvi in uporabi tega orodja obisk uradne strani, kjer lahko najdete uradna dokumentacija.