Een professionele WordPress-ontwikkelingsworkflow maken met Vagrant

Als ontwikkelaars weten we allemaal dat het creëren van een duurzame en uniforme lokale WordPress-ontwikkelingsworkflow een uitdaging en een complex proces kan zijn. Programma's zoals MAMP, WAMP en XAMPP maken in theorie de installatie van een lokale webserver eenvoudig, maar voor iedereen die het heeft geprobeerd, weet je dat het kan worden bezaaid met bugs en verre van ideaal. 

Met tools als Git en Capistrano is het relatief eenvoudig om wijzigingen door te voeren van een repository naar een server, maar het aanbrengen van wijzigingen daarvoor kan chaotisch zijn, vooral voor teams.

Dat is waar Vagrant op de markt komt. Vagrant is gemaakt door Mitchell Hashimoto en is in wezen een hulpmiddel voor het beheren van virtuele machines - een programmatische manier creëren en configureren van virtuele machines die de productieomgeving van een toepassing nabootsen. Van de Vagrant-website:

Vagrant biedt eenvoudig te configureren, reproduceerbare en draagbare werkomgevingen gebouwd op basis van industriestandaard technologie en aangestuurd door een enkele consistente workflow om de productiviteit en flexibiliteit van u en uw team te maximaliseren.

In dit artikel gebruiken we VirtualBox en Ubuntu om een ​​draagbare WordPress-omgeving te maken die platformonafhankelijk is en gemakkelijk kan worden geïmplementeerd in vrijwel elke live-omgeving.

Ermee beginnen

Om te beginnen moeten we twee programma's installeren, VirtualBox en Vagrant, samen met een Vagrant-helperplug-in.

Installeer VirtualBox

Ga naar https://www.virtualbox.org/wiki/Downloads en download de nieuwste versie voor uw besturingssysteem. Pak VirtualBox uit en installeer, en u bent klaar om te gaan.

Installeer Vagrant

Ga naar http://www.vagrantup.com/downloads.html en download en installeer de nieuwste versie van Vagrant voor uw besturingssysteem. Na installatie zullen we de plug-in Vagrant Hosts Updater moeten installeren. Deze plug-in zal uw hosts-bestand aanpassen zodat uw VM gemakkelijk toegankelijk is. Typ dit in uw terminal:

$ vagrant plugin installeert vagrant-hostsupdater

Lancering van uw eigen VM

Nu moeten we onze virtuele machine bouwen. Onder normale omstandigheden zou u uw eigen moeten maken Vagrantfile en veel aangepaste Ruby-scripting uitvoeren om een ​​machine te krijgen waarmee WordPress goed werkt. Mijn teamgenoot Trevor Maglione heeft een WordPress Vagrant-installatie gemaakt die al het harde werk voor je doet. We raden u aan deze repository te gebruiken en deze vervolgens naar uw computer te klonen, zodat u uw eigen versie kunt behouden. Het is openbaar beschikbaar op Bitbucket:

https://bitbucket.org/axocomm/vagrant-wordpress-lemp

$ git clone [my-cloned repository] / gewenst-pad-naar-project / $ cd / gewenst-pad-naar-project / 

Eenmaal gekloond op uw computer, moet u het bestand verplaatsen Vagrantfile.sample naar een bestand met de naam Vagrantfile en bewerk het:

Wijzig de waarde op regel 12 in wat uw project ook is, bijvoorbeeld:

config.vm.hostname = 'myproject'

Notitie: Als u van plan bent om meerdere zwervende VM's tegelijk te gebruiken, wilt u ook de IP-adreswaarde wijzigen op regel 34 voor elke nieuwe VM die u uitvoert. Verander 192.168.3.10 in 192.168.3.11 op je tweede VM, 192.168.3.12 op je derde VM, enzovoort.

Je VM starten

Ga nu naar uw terminal en ga naar de map waar uw gekloonde repository zich bevindt en typ in:

$ vagrant up

Notitie: Voor Windows-gebruikers moet u op de opdrachtregel staan ​​met "beheerdersmachtigingen." Om deze opdracht uit te voeren, gebruikt u de opdrachtprompt met verhoogde bevoegdheden of voert u CYGWIN uit als beheerder. Dit is essentieel voor de update-plug-in van hosts om te werken.

Je zult nu zien dat Vagrant een exemplaar van Ubuntu downloadt. Momenteel gebruikt het 12.04, we zijn van plan het in de nabije toekomst bij te werken naar 14.04. Vagrant gebruikt vervolgens Puppet om de vereiste pakketten te installeren voor het uitvoeren van een volledig functionele WordPress-site op een LEMP-stapel (Linux Nginx MySQL PHP5-FPM). Dit proces duurt minder dan vijf minuten. 

Als u zich niet op een Windows-computer bevindt, wordt u om uw wachtwoord gevraagd (sudo) om gegevens in uw hosts-bestand in te voeren.

We zijn nu klaar! Ga naar uw webbrowser en typ de projectnaam in uw webbrowser. Als u het myproject in uw Vagrantfile hebt genoemd, gaat u naar http://myproject.dev/. Zorg ervoor dat je typt http: // of je kunt je browser verwarren. U zou nu het installatiescherm van WordPress moeten zien.

Conclusie

Je hebt nu een werkende lokale versie van WordPress met vagrant. Je kunt nu lokaal bestanden bewerken en ze worden automatisch naar je VM gepusht via gedeelde mappen zonder vertraging.

Als je klaar bent met werken voor de dag, typ je gewoon $ vagrant stop om je VM op te schorten en in te typen $ vagrant up om het te hervatten. Als je ooit problemen hebt met de VM, probeer het dan opnieuw met marionet:

$ vagrant herladen - provisie