Skitnica

Vodič za skitnicu

Vodič za skitnicu
Vagrant je alat za upravljanje virtualnim strojevima pomoću jednostavnog sučelja naredbenog retka. Trebao bi učiniti cijeli postupak urednim i čistim, a da vaša glavna instalacija ne bude zagađena tonom konfiguracijskih datoteka.Vagrant koristi VirtualBox u pozadini u kojoj rade Virtualni strojevi i ako otvorite VirtualBox nakon instaliranja nekoliko ovih Vagrant Boxova, vidjet ćete da postoje novi VM-ovi kojih prije nije bilo. Vagrant box samo je još jedan pojam virtualnih strojeva kojima se posebno bavi ovaj uslužni program o kojem raspravljamo.

Zasto se zamarati?

Hashicorp, tvrtka koja stoji iza Vagranta, održava skladište mnogih Skitnice to su unaprijed konfigurirane slike virtualnih strojeva od kojih možete lokalno generirati neograničen broj VM-ova. Riješava dva problema:

  1. Budući da svi počinju s istom slikom, programeri se mogu riješiti Radi na mom stroju izgovor, gdje bi određena aplikacija savršeno funkcionirala na jednom stroju, ali ne i na drugom. Svatko se razvija na različitim strojevima, ali radi na potpuno istoj konfiguraciji virtualnog stroja.
  2. Ne morate ponavljati instalaciju virtualnih strojeva ako se odlučite riješiti starih. Vagrant se brine za cjelokupnu instalaciju i postavljanje vašeg VM-a. Sve od dodjele pohrane i memorije do stvaranja korisnika za postavljanje dozvola.

U mnogočemu je sličan Dockerovim slikama i rješava slične probleme, s ključnom razlikom u tome što koristi VM-ove umjesto spremnika, što je čini odlučnijom, težom i sporijom alternativom. Međutim, virtualni strojevi imaju svoje prednosti kao što su bolji mrežni stog i veća fleksibilnost u pogledu odabira datotečnog sustava itd., Što omogućava Vagrantu da popuni određenu nišu prijenosnih VM-ova.

Pa krenimo!

Preduvjeti

Prvi i najvažniji uvjet je instalacija VirtualBox-a nakon čega biste trebali instalirati Vagrant. Ako imate VirtualBox već instaliran, samo nabavite ovaj drugi. Postupak instalacije može se uvelike razlikovati, ovisno o tome koji OS pokreće vaš domaćin, pa vas pozivam da potražite službene dokumente za to:

  1. Nabavite VirtualBox ovdje
  2. Dovedite Vagranta ovdje

Uz to, ako koristite Windows, trebat će vam SSH klijent, možda ćete htjeti instalirati Git Bash koji savršeno funkcionira na sustavu Windows sa zadanim mogućnostima instalacije.

1.  Skitnice

Vagrant Box je izraz za virtualne strojeve kojima upravlja Vagrant. Možete dobiti kutije Vagrant koje sadrže samo operativni sustav poput Ubuntua, CentOS-a itd. Ili mogu sadržavati unaprijed konfigurirani LAMP stog, MEAN stog ili drugu instalaciju softvera koja bi vam mogla olakšati proces razvoja i testiranja.

Na primjer, ako pišete WordPress temu, možete dobiti okvir Vagrant na kojem već radi jezgra WordPress. S ovom VM-om možete podijeliti mapu projekta u kojoj imate sadržaj teme. Provjerite radi li nova tema kako ste očekivali. Jednom kada završite s temom, samo uklonite okvir, ostavljajući samo projektne datoteke za koje sada znate da bi u redu funkcionirale u stvarnom svijetu.

Ove kutije možete istražiti ovdje. Započet ćemo s običnim Ubuntuom 16.04 LTS kutija. Možete ga vidjeti naveden kao ubuntu / xenial64, ako posjetite gornju vezu.

Otvorite terminal i napravite mapu za svoje eksperimente Vagrant.

$ mkdir vagrant_box
$ cd vagrant_box

U ovoj mapi možemo pokrenuti Vagrant okruženje pokretanjem:

$ skitnica init

Ovo mjesto a Vagrantfile unutar mape koja je u osnovi Ruby skripta koja opisuje konfiguraciju vašeg Vagrant Boxa. Ne morate znati Ruby da biste koristili ovu datoteku, sintaksa je prilično jednostavna. Pokrivat ćemo ono osnovno dok idemo dalje.

Sada možete pokrenuti naredbu vagrant up, a budući da je prvi puta pokrećete, morat će preuzeti sliku virtualnog stroja iz aplikacije.skitnica.com. Ovisno o vašoj internetskoj vezi, može potrajati dugo, ali nakon što se preuzme, slijedi skitnica naredbe za slično skitnica init ubuntu / xenial64 neće potrajati toliko dugo jer se slika sada lokalno sprema na vaše računalo. Provjerite jeste li u istom direktoriju (skitnica_kutija) gdje je Vagrantfile postavljen ranije.

$ skitnica gore

Nakon što ovo završi, možete ssh u okvir kao korisnik lutalica s root privilegijama. Samo pokrenite sljedeće:

$ skitnica ssh

Čestitamo! Upravo ste se prijavili u svoj prvi Vagrant Box. Sad kad smo započeli, naučimo nekoliko osnovnih vagrant naredbi prije nego što uđemo u Vagrantfile. Samo upišite exit i pritisnite za izlaz iz terminala VM-a. Skitnica će i dalje raditi u pozadini.

Uobičajena naredba Vagrant

Ako želite zaustaviti okvir za izvođenje, pokrenite naredbu:

$ skitnica zaustaviti

Za ponovno pokretanje možete koristiti vagrant up

Ako želite, možete i koristiti

$ vagrant suspend
$ skitnica životopis

Oni će suspendirati VM i vratiti ga na sigurno. Ako napravite promjene u Vagrantfileu i želite da se promjene prikažu, upotrijebite naredbu:

$ vagrant ponovno učitavanje

Ne zaboravite pokrenuti sve naredbe iz istog direktorija u kojem se nalazi vaša datoteka Vagrant. Možete stvoriti više skitnica ako stvorite nove direktorije negdje drugdje i pokrenete skitnica init  u njima. Upravljat ćete njima iz njihovih odgovarajućih mapa. Mogu se temeljiti na istim ubuntu / xenial sliku koju smo dobili ranije ili možete unijeti više slika.

Da biste popisali sve skitnice i njihov status (pokrenut ili zaustavljen), upotrijebite naredbu:

$ vagrant globalni status

Da biste uklonili vagrant box i sav njegov privatni sadržaj, iz direktorija kutije (gdje se nalazi njegova odgovarajuća Vagrantfile) pokrenite:

$ skitnica uništiti

Osnovna slika koju ste ranije preuzeli i dalje će postojati ako kasnije želite stvoriti nove okvire. Ako želite vidjeti sve slike koje su lokalno spremljene, pokrenite:

Popis $ vagrant box

Da biste izbrisali samu sliku okvira, pokrenite:

$ vagrant box ukloniti

Nakon toga, morat ćete ponovo preuzeti okvir, ako se za tim ukaže potreba.

Pregledanje datoteke Vagrant

Na prvi pogled može se činiti da unutar datoteke Vagrant postoji puno mogućnosti. Iako je to vrlo vjerojatno istina, zanimljivo je primijetiti koliko svega možete postići samo s malo dotjerivanja.

1.   Dijeljena mapa

Većina skitnica dolazi s unaprijed konfiguriranim dijeljenim mapama. Na primjer, ako pregledate Vagrantfile koji smo stvorili prvi put kad smo ga pokrenuli skitnica init primijetit ćete unos, koji je komentirani redak,

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

Sinkroniziranoj mapi mogu pristupiti i skitnica i glavni računalo. Prvi argument nakon konfiguracija.vm.synced_folder označava put do mape na hostu, a drugi argument pokazuje put do kojeg će se ta mapa montirati na gostujući prolazni okvir. Prema zadanim postavkama, mapa u kojoj ste stvorili Vagrantfile također se dijeli s vagrant okvirom.

Provjerimo to, ubacivanjem u naš skitnički okvir.

$ skitnica ssh

Ovdje navedite datotečne sustave.

$ df -h

Možete vidjeti da postoji veliki datotečni sustav skitnica montiran na / skitnica staza. Razlog je toliko velik jer je mapa Vagrantfile na mojem računalu domaćin na particiji koja je velika 632 GB, a mapa tamo može narasti i do te veličine. Budući da se radi o istoj mapi koja se dijeli s kutijom, ona pruža ludu količinu prostora za pohranu.

Možete pregledati sadržaj / skitnica a iste su koje vidite na vašem hostu, naime jedna datoteka Vagrant i druga datoteka dnevnika.

Možete dodati još dijeljene mape u kojoj se pojavljuje komentar koji objašnjava sintaksu dijeljene mape.

Kao da je tako,

U ovom slučaju mapa s imenom Dijeljena mapa se dodaje, što je jedan direktorij gore, dakle dvostruka točka ispred njega. Ova je mapa montirana na / var / www / html  na unutar kutije. Ovdje većina web poslužitelja poput apachea i nginxa traži web sadržaje koje želi poslužiti.

Jednostavno možete ubaciti svoje projektne datoteke, html, css i js Dijeljena mapa gdje na njemu radite na glavnom računalu koristeći grafičke uređivače teksta poput Atoma i VSCode . Skitnica će djelovati kao poslužitelj proizvodne klase koji će opsluživati ​​ove datoteke.

Sad je pitanje, kako vidimo da se ove HTML datoteke poslužuju kao web stranica. Koje ime hosta unijeti u preglednik?

2.   Umrežavanje

Prema zadanim postavkama, vagrant nudi neke korisne konfiguracije. Zahtjev koji je vaš preglednik poslao localhostu na priključak 8080 prosljeđuje se na priključak 80 na vašem skitničkom pretincu. Dakle, ako imate web poslužitelj pokrenut na vašem skitnici koji sluša na priključku 80 (standardni http priključak), tada možete vidjeti tu web stranicu posjetom http: // localhost: 8080

S druge strane, možda biste željeli izbjeći sve prosljeđivanje porta localhost, u tom slučaju možete otvoriti Vagrantfile i otkomentirati sljedeći redak:

konfiguracija.vm.mreža "private_network", ip: "192.168.33.10 "

Spremite promjene koje ste napravili i pokrenite skitnica ponovno napuniti za ponovno pokretanje okvira s novom konfiguracijom. Sada ima namjensku privatnu ip adresu 192.168.33.10 kojem samo vaš domaćin može pristupiti. Tako sada možete otvoriti preglednik i unijeti http: // 192.168.33.10 i možete vidjeti web stranice koje se poslužuju na standardnom priključku 80 http.

Zaključak

Kao što vidite, Vagrant vam može pomoći da lokalno pokrenete svoje aplikacije, jer bi istodobno radile u proizvodnji, s njima možete raditi pomoću IDE-a i uređivača teksta koje ne biste imali na tipičnom poslužitelju. Korištenje zajedničkih mapa i privatnih mreža uvelike poboljšava ovu sposobnost Vagranta.

Javite nam ako imate dodatnih pitanja u vezi s ovim uputstvom ili ako postoji neka druga tema koju želite da pokrijemo.

Kako koristiti Xdotool za poticanje klikova i pritiska miša u Linuxu
Xdotool je besplatni alat za naredbene retke otvorenog koda za simulaciju klikova mišem i pritiska tipki. Ovaj će članak pokrivati ​​kratki vodič o ko...
Top 5 ergonomskih proizvoda za računalni miš za Linux
Uzrokuje li dugotrajno korištenje računala bolove u zapešću ili prstima? Patite li od ukočenih zglobova i stalno se morate rukovati? Osjećate li goruć...
How to Change Mouse and Touchpad Settings Using Xinput in Linux
Most Linux distributions ship with “libinput” library by default to handle input events on a system. It can process input events on both Wayland and X...