Advertentie

Als je ooit aan een webontwikkelingsproject hebt gewerkt, weet je dat het moeilijk kan zijn om te beginnen. Zelfs als je gewoon bent een eenvoudige WordPress-widget maken Hoe u uw eigen standaard WordPress-widgets maaktVeel bloggers zullen op zoek gaan naar de perfecte Wordpress-widget die precies doet wat ze willen, maar met een beetje programmeerervaring is het misschien gemakkelijker om je aangepaste widget te schrijven. Deze week zou ik ... Lees verder , heb je een WordPress-instantie nodig om mee te werken. Dat betekent vaak dat je ergens in de cloud aan werkt, of misschien het opzetten van een lokale webserver Voer een lokale PHP-webserver uit op Mac OS X met Zend ServerHet hosten van uw eigen PHP-server heeft twee belangrijke voordelen. Allereerst kunt u het lokaal hosten, zodat u zich geen zorgen hoeft te maken over het overzetten van uw bestanden en alleen de pagina hoeft te vernieuwen in ... Lees verder . En als je met iemand samenwerkt, moeten ze ook exact dezelfde configuratie maken.

Dat is vervelend, maar het wordt nog erger: als je toevallig aan meer dan één project tegelijk werkt, en beide projecten gebruik iets andere stacks (verschillende webservers, versies van PHP, enz.) Je zult merken dat je veel moet bijhouden van. Gelukkig is er een betere manier: ontmoeten Zwerver, een gratis en krachtige manier om projectspecifieke virtuele machines te maken.

Het eindresultaat, of: waarom zou u zich druk maken?

computer

Het concept achter Vagrant klinkt in het begin een beetje lastig. U draait in feite een VM op die uw webserver en eventuele gerelateerde scripts uitvoert, maar uw projectmap is dat wel buiten de VM. U kunt dus elke teksteditor en browser gebruiken waarmee u gewoonlijk werkt, en u hoeft geen langzame VM-GUI te accepteren. De VM doet gewoon het zware werk: hij draait een lokale webserver en bedient alle bestanden die u nodig heeft.

De aantrekkingskracht is gebruiksgemak: als u eenmaal een Vagrant-box hebt geconfigureerd voor uw project, gaat u, wanneer het tijd is om te coderen, naar de projectmap en typt u zwervers. Hiermee start u de VM op en gaat u aan de slag. Wanneer u klaar bent, sluit u de VM af met zwervende stilstand en dat is alles - niets dat uw harde schijf en systeemconfiguratie vervuilt, het staat allemaal op zichzelf.

Wat nog cooler is, is dat je niet hoeft te begrijpen hoe de magie gebeurt: stel dat je deel uitmaakt van een ontwikkelingsteam van drie personen. Slechts één man weet echt hoe hij de omgeving moet configureren (een veel voorkomende situatie). Vroeger moest hij elke machine handmatig instellen. Nu kan hij het maar één keer doen en iedereen kan typen zwervers en aan de slag - code delen op GitHub (of BitBucket, zoals Matthew aanbeveelt Ben je dol op GitHub? 4 redenen waarom u uw code op BitBucket moet hostenU moet nadenken over waar u uw code wilt opslaan. Waarschijnlijk heb je wel eens van GitHub gehoord. Dat is niet zo gek. GitHub wordt gebruikt door individuen en bedrijven om code te hosten, samen te werken aan documentatie ... Lees verder ) en codering op dezelfde setup.

Merk op dat Vagrant bedoeld is om naast een broncontrolesysteem te werken: u stelt uw runtime-omgeving in Vagrant in en u gebruikt Git voor de code. Dus als iemand alleen uw Vagrant-box heeft, kunnen ze er niet veel mee doen, omdat alle bestanden van uw website ontbreken: deze staan ​​in een map buiten de virtuele machine.

Vagrant installeren en een box initialiseren

Vagrant zelf kan eenvoudig worden geïnstalleerd op Windows, OS X en Linux. Ga naar de officiële downloadpagina en pak een installatieprogramma voor uw besturingssysteem naar keuze. Mogelijk moet u VirtualBox en Ruby afzonderlijk installeren, maar dat hangt af van uw specifieke geval.

Zodra je Vagrant hebt geïnstalleerd, is het tijd om de banden te schoppen met de standaardbox. Typ de volgende bezwering:

zwervende doos voeg basis toe http://files.vagrantup.com/precise32.box. zwerver init. zwervers. 

De eerste regel voegt een 'basisbox' toe aan uw systeem en het zal even duren omdat het de box daadwerkelijk downloadt van de servers van Vagrant. Je krijgt de 32-bits versie van Ubuntu 12.04, Precise Pangolin. De tweede regel initialiseert de box en de derde regel start het op.

Ervan uitgaande dat het allemaal goed gaat, zou je console er ongeveer zo uit moeten zien:

zwerver

Je kunt nu typen zwerver ssh om in je nieuwe box te schuiven, gewoon om te zien of het werkt.

Deze opdrachten werken vanuit de map die je Vagrant-box bevat (welke map je ook hebt uitgevoerd) zwerver init in). Dit betekent dat u meerdere Vagrant-VM's naast elkaar kunt configureren (en misschien zelfs uitvoeren) - bijvoorbeeld één VM per project.

Op zich is dit niet de meest opwindende uitkomst ter wereld. Ik meen het is leuk dat je nu een Ubuntu VM hebt draaien, maar je kunt er niet echt veel mee uit de doos.

Om de zaken nuttiger te maken, moet u ofwel uw omgeving instellen in deze box (het installeren van het web server en ontwikkelstack die u nodig hebt), of u zou een reeds bestaande box moeten vinden die al veel heeft van wat u heeft nodig hebben. Aangezien het opzetten van een ontwikkelomgeving buiten het bestek van dit artikel valt (en verandert van project naar project), laten we nu eens kijken naar de grote verscheidenheid aan bestaande boxen die u kunt krijgen.

Andere dozen krijgen

Zelfs als je weet hoe je de ontwikkelomgeving moet opzetten die je nodig hebt, is het hele punt van Vagrant dat het dubbel werk bespaart. Als je bijvoorbeeld een WordPress-ontwikkelaar bent, heb je Apache, PHP, MySQL, PhpMyAdmin en WordPress nodig - en je bent niet de enige. In dit specifieke geval zou je naar een site genaamd Vagrantpress [Niet langer beschikbaar] kunnen gaan en met een paar snelle regels code alles instellen wat je nodig hebt:

wget -O vagrantpress-master.zip https://github.com/chad-thompson/vagrantpress/archive/master.zip unzip vagrantpress-master.zip cd vagrantpress-master vagrant omhoog. 

En dat is alles - u zou nu kunnen gaan http://localhost: 8080 en zie WordPress draaien. Dit stukje magie (in staat zijn om naar de poort 8080 van uw lokale host te gaan) vindt plaats met dank aan VirtualBox's bridged Ethernet-adapters.

Dit is slechts een premade Vagrant-doos uit honderden verschillende dozen die online zweven. Voor een grote collectie kunt u terecht op Vagrantbox.es, wat eigenlijk een grote tafel is met de vele dozen. Merk op dat Vagrantbox.es de dozen niet echt host - in plaats daarvan zijn de box-bestanden overal verspreid, groot in Sourceforge-, Dropbox- of Google Drive-mappen. Dit betekent ook dat ze op elk moment kunnen dalen, dus als u eenmaal een doos hebt gevonden die voor uw project werkt, moet u een lokale kopie maken ervan - of beter nog, exporteer de doos waarmee u uiteindelijk gaat werken (aangezien u ongetwijfeld enkele aanpassingen en aanpassingen zult maken).

Geen einde, maar een begin

Dit bericht was niet bedoeld als algemene gids voor Vagrant - dat is wat de Vagrant docs zijn er voor. In plaats daarvan hoop ik dat je nu een idee hebt van wat een coole tool Vagrant is, en hoe nuttig en benaderbaar het kan zijn. Maak nu een doos!