Vagrant (software)
Vagabond software | |
---|---|
Tip | |
Dezvoltator | HashiCorp |
Data primei versiuni | 8 martie 2010 |
Ultima versiune | 2.2.9 / mai 2020 |
Sistem de operare | Linux, Windows, macOS (nu este listat ) |
Limba | Rubin |
Licență | Licență MIT ( licență gratuită ) |
Limbă | Engleză |
Site-ul web | www.vagrantup.com |
Vagrant este un manager de mașini virtuale open source ; funcționează cu multe software-uri de hipervizor , numite furnizori, inclusiv VirtualBox , VMware și KVM.
Vagrant, împreună cu Docker, este unul dintre software-urile de vârf pentru implementarea portabilă a mediilor de dezvoltare a aplicațiilor.
De fapt, datorită Vagrant, este posibil să construiți mașini virtuale care utilizează aceleași configurații și pot fi create, modificate și șterse cu ușurință.
Istorie
Vagrant s-a născut în 2010 ca un proiect personal al tânărului Mitchell Hashimoto . În octombrie 2010, compania Engine Hard Ha , o companie renumită în dezvoltarea de aplicații Ruby , decide să sponsorizeze creatorul. Exact 2 ani mai târziu, apare prima versiune stabilă a Vagrant, versiunea 1.0, cu mare succes. Inițial, Vagrant era utilizabil doar prin Virtual Box, dar datorită creației companiei HashiCorp , fondată de Hashimoto însuși pentru dezvoltarea unică a proiectului său, acum poate fi utilizată și cu alte software-uri de virtualizare, precum VMware și KVM. Vagrant este open-source și HashiCorp oferă cursuri de instruire și întreținere pentru companii private și publice.
Vagrant în versiunea 1.6 se leagă de containerele Docker și îi permite să ruleze la rândul său într-un mediu complet virtualizat.
În 2013, creatorul Mitchell a publicat o carte despre modul în care funcționează Vagrant, intitulată: Vagrant: Up and Running: Create and Manage Virtualized Development Environments publicată de O'Reilly Media.
Arhitectură
Vagrant permite crearea și configurarea unei mașini virtuale prin API - uri open source puse la dispoziție de sistemele de virtualizare.
Componentele Vagrant sunt:
- Furnizori
- Cutie
- Aprovizionare
1) Furnizorii sunt software-ul în care este posibil să se creeze o mașină virtuală; de aceea se ocupă cu partiționarea memoriei RAM, planificarea proceselor și gestionarea memoriei de masă. Cel mai folosit de Vagrant este VirtualBox .
2) Casetele sunt imagini ale mașinilor virtuale deja configurate cu anumite sisteme de operare. Vagrant fiind open source este posibil să creați, să modificați și să faceți publice casetele. Aceasta este cu siguranță una dintre componentele cele mai utilizate de dezvoltatori, deoarece vă permite să evitați procesul lent și greoi de instalare a diferitelor servicii și a sistemului de operare în sine.
3) Provizionarea este posibilitatea de a face o casetă executabilă și modificabilă dintr-un singur fișier; acesta este un potențial important, deoarece vă permite să evitați utilizarea unor structuri de fișiere complicate pentru partajarea proiectelor.
Printr-un fișier de configurare numit „Vagrantfile” este posibil să creați sau să modificați o casetă. Conține toate configurațiile casetei în sine, inclusiv imaginea de utilizat, specificațiile hardware, fișierele și folderele partajate și adresele de ieșire și de intrare.
Exemplu de fișier Vagrant (fără extensie):
config . vm . box = "ncaro / php7-debian8-apache-nginx-mysql"
config . vm . furnizorul "virtualbox" face | v |
v . memorie = 1024
v . cpus = 2
Sfârșit
config . vm . rețea : private_network , ip : '192.168.1.10:8080'
Sfârșit
Rularea acestui Vagrantfile implică crearea unei mașini virtuale, instalarea unui sistem de operare de tip Debian 8 , configurarea și instalarea tuturor software-urilor și serverelor necesare pentru a avea un mediu web complet ( PHP , Nginx , NodeJS , Apache ...).
Particularități
Vagrant, spre deosebire de alte software-uri de gestionare a containerelor, folosește furnizori. Aceasta degradează viteza de execuție și performanța generală. Software-urile alternative, de exemplu Docker , sunt libere de utilizarea furnizorilor și garantează performanțe considerabil mai mari, dar permit executarea numai a mediilor Linux și nu BSD , Windows și macOS .
Un alt aspect semnificativ de luat în considerare este siguranța. Vagrant gestionează și creează mașini virtuale, prin urmare mașini cu o separare clară a resurselor, permițând o securitate mai mare în execuție, spre deosebire de containere, care utilizează multe resurse comune cu mașina care le găzduiește.
Notă
- Caseta ncaro / php7-debian8-apache-nginx-mysql
- GitHub - Mediawiki - Vagrant
- Pagina oficială Vagrant
- Vagrant versiunea 1.0
- Vagrant versiunea 1.6
- Vagrant: În funcțiune: Creați și gestionați medii de dezvoltare virtualizate
linkuri externe
- ( RO ) Site oficial , pe vagrantup.com .
- Vagrant , pe packages.debian.org .
- Depozit de surse vagi , la github.com .
- Site de raportare a erorilor , pe github.com .