Testgetriebene Entwicklung mit Laravel: Entwicklungsumgebung

Im nachfolgenden ersten Teil einer Beitragsserie möchte ich mit der Erstellung eines Blog-Systems in die Testgetriebene Entwicklung mit Laravel einführen. Dabei kann der ein oder andere bestimmt noch etwas über Laravel lernen 🙂

Im ersten Teil richten wir unsere perfekte Entwicklungsumgebung ein.

Vorkehrungen

Vorbereitung ist alles: Die perfekte Entwicklungsumgebung
Vorbereitung ist alles: Die perfekte Entwicklungsumgebung

Ich gehe hier von Windows als Betriebssystem aus. Bis auf Pfadangaben ist die Installationsroutine aber dieselbe.

Für die Entwicklungsumgebung nutzen wir Laravel Homestead. Das ist die offizielle Entwicklungsumgebung für Laravel und kann auch für Symfony oder generische PHP-Projekte verwendet werden. Ich benutze Laravel Homestead mittlerweile für so ziemlich alles.

Dafür müssen

installiert sein. Der Rechner muss nach der Installation in der Regel nicht neugestartet werden.

Wofür brauche ich das alles?

VirtualBox ist eine Virtualisierungssoftware. Damit lassen sich durch eine Grafische Oberfläche verschiedenste Betriebssysteme virtualisieren. In der Praxis entsprechen Entwicklungsumgebungen in etwa den Anforderungen der Produktivumgebung.

Vagrant dagegen ist ein CLI für VirtualBox und bietet eine einfache Schnittstelle zum Teilen von vorkonfigurierten Betriebssystemen. Das beschleunigt die Einrichtung einer Entwicklungsumgebung ungemein und sorgt mit den anpassbaren Vagrantfile-Konfigurationsdateien zur einfachen Konfiguration von Umgebungen auf Projekt-Basis.

Git versorgt die Windows-Eingabeaufforderung mit einem SSH-Daemon und UNIX-Tools und erlaubt uns eine einfache Verbindung mit der Entwicklungsumgebung über eben diese.

PhpStorm ist das wohl mächtigste IDE für PHP. Gerade für Nutzer, die mit bestimmten Frameworks und APIs nicht blind vertraut sind, ist die Autovervollständigung ein Segen. Die verfügbare Laravel Erweiterung macht diese Automatische Vervollständigung sofort für uns verfügbar. Dazu aber im zweiten Teil mehr.

 

Homestead installieren

Es empfiehlt sich, nun über die Kommandozeile (Administrator) zu arbeiten. Zuerst wechseln wir in unser Nutzerverzeichnis und klonen das Git-Repository von laravel/homestead.

Eingabeaufforderung

cd C:\Users\%USERNAME%

git clone https://github.com/laravel/homestead Homestead

Homestead\init.bat

Im selbigen Ordner liegt nun eine neue Datei Homestead.yaml liegt die Konfiguration der Websites und Datenbanken unserer Entwicklungsumgebung. Hier fügen wir nun unser neues Projekt ein:

folders:
    - map: ~/Code
      to: /home/vagrant/Code

sites:
    - map: homestead.app
      to: /home/vagrant/Code/Laravel/public

    - map: blog.app
      to: /home/vagrant/Code/Blog/public

databases:
    - homestead
    - blog

Hosts-Datei beschreibbar machen

Damit wir unsere Windows-interne Hosts-Datei nicht für jedes Projekt manuell bearbeiten müssen, erlauben wir BENUTZERN den Schreibzugriff auf die Hosts-Datei.

Dazu navigieren wir im Windows Explorer zu C:\Windows\System32\drivers\etc und passen die BENUTZER-Rechte entsprechend an:

Hosts-Datei beschreibbar machen
Hosts-Datei beschreibbar machen

Verzeichnis anlegen

Damit beim Aufsetzen von Homestead nichts schiefläuft, müssen wir noch einen Code-Ordner im Nutzerverzeichnis erstellen:

Eingabeaufforderung

mkdir C:\Users\%USERNAME%\Code

vagrant-hostsupdater installieren

Um die automatische Aktualisierung der Hosts-Datei in Anspruch zu nehmen, installieren wir nun über die Kommadozeile (Administrator) das vagrant-hostsupdater Plugin für vagrant.

Eingabeaufforderung

vagrant plugin install vagrant-hostsupdater

Privaten Schlüssel generieren

Als letzte Vorbereitung müssen wir noch einen Privaten und dazugehörigen Öffentlichen Schlüssel generieren. Der wird von Laravel Homestead für die Einrichtung benötigt.

Eingabeaufforderung

ssh-keygen
Mit Enter bestätigen, Passphrase optional.

 

 

Entwicklungsumgebung herunterladen und installieren

Nun können wir endlich unsere Entwicklungsumgebung installieren. Dazu wechseln wir ins Homestead-Verzeichnis

Eingabeaufforderung

cd C:\Users\%USERNAME%\Homestead

vagrant up

Hier wird die Ubuntu-Box, die als Basis der Homestead-Box dient, heruntergeladen. Anschließend wird die benötigte Software installiert. Der Vorgang kann je nach Internetverbindung, Festplatten- und Rechenleistung eine halbe Stunde dauern.

Im nächsten Teil gehts dann an den Code: Testgetriebene Entwicklung mit Laravel 🙂 In der Zwischenzeit kann ich jedem nur die Dokumentation für Laravel Homestead ans Herz legen.

3 Antworten auf „Testgetriebene Entwicklung mit Laravel: Entwicklungsumgebung“

  1. Coole Sache. Ich betreibe auch einen Blog, der sich hauptsächlich um Laravel dreht. Schön mal wieder einen gefunden zu haben, der sich auch mit dem Thema beschäftigt.

    Ich bin schon auf den zweiten Teil gespannt.

    Viele Grüße
    Dirk

    1. Hallo Dirk,

      das freut mich! Immer wieder schön Gleichgesinnte zu treffen 🙂

      Ich wollte erst einmal 5.4 abwarten und sacken lassen, bevor ich tiefer in die Materie gehe!

      Liebe Grüße,
      Pascale

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.