2015-07-04 6 views
9

Ich habe Vagrant erfolgreich zusammen mit einigen Kisten auf meinem Windows-PC installiert ist. Ich muss sagen, es funktioniert super und erstellt und zerstört VMs mit verschiedenen Konfigurationen im laufenden Betrieb.Installation Komponist mit Vagrant

Das einzige Problem, das ich jetzt mit Blick auf bin ist, dass ich Komponisten installiert werden soll. Bei composer müssen Sie jedoch auf die php.exe verweisen. Ich möchte PHP nicht auf meinem Computer installieren, auch wenn Vagrant keinen Sinn hat, richtig. Wie gehe ich dieses Problem an?

Ich habe einige Artikel über die Verwendung von Puppet gesehen, aber ich konnte nicht viel Sinn aus ihnen machen.

Vielen Dank im Voraus.

Antwort

14

Sie müssen nur PHP (und Locke) in Ihrer vagrant Box installieren. Zum Beispiel ausführen vagrant ssh SSH-Zugriff auf Ihre Box zu erhalten, und führen Sie die folgenden Befehle:

$ sudo apt-get install -y php5-cli curl 
$ curl -Ss https://getcomposer.org/installer | php 
$ sudo mv composer.phar /usr/bin/composer 

Jetzt sind Sie bereit, den composer Befehl in der Vagabund Box verwenden.

Sie können dies verbessern, indem Sie diesen Teil der Bereitstellung vornehmen, den Schritt, in dem eine Box eingerichtet wird, wenn vagrant up ausgeführt wird. setzt die oben genannten Befehle in einer Shell-Datei Um dies zu tun, (zum Beispiel project/vagrant/provision.sh):

sudo apt-get install -y php5-cli curl > /dev/null 
curl -Ss https://getcomposer.org/installer | php > /dev/null 
sudo mv composer.phar /usr/bin/composer 

nun konfiguriert, dass diese Shell-Datei als Bereitstellungsschritt in Ihrem VagrantFile:

Vagrant.configure("2") do |config| 

    config.vm.box = "ubuntu/trusty64" 

    # configure the shell file as a provision step: 
    config.vm.provision :shell, path: "vagrant/provision.sh" 

end 

nun beim Laufen vagrant init, wird die Shell-Datei ausgeführt und PHP & Composer installiert.

Sie können auch eine Box mit PHP und Composer vorinstalliert verwenden, wie laravel/homestead.

+0

Dank habe ich es jetzt. Ich benutze die Heimstatt-Box, funktioniert perfekt. – JasonK

+0

Danke. Also, wenn wir Composer-Befehle in unserer Vagabund-Box ausführen, wird es auch die Änderungen an Dateien auf meinem Host-Windows-Rechner widerspiegeln? Wie wäre es mit Git? Müssen wir git auf Windows-Host oder in der Vagabund-Box installieren? Nochmals vielen Dank –

0

Es gibt auch eine vagrant Box mit Komponist vorinstalliert. Hier ist der Github für diese Box: https://github.com/Swader/homestead_improved. Mit Git Bash für Windows, navigieren Sie zu dem Ordner, in dem/homestead_improved installiert wurde.

Ausführen vagrant up;, vagrant ssh innerhalb der VM-Maschine zu bekommen.

Einmal in der virtuellen Maschine CD innerhalb der/Code dir. Sie können jetzt den Composer verwenden, zum Beispiel composer global require "laravel/installer=~1.1", um das Laravel-Installationsprogramm zu installieren.

+0

das ist der Punkt, mein Landstreicher hat nicht Compser vorinstalliert. Was nützt es, wenn es es hat? Warum hat Laravel uns auf das falsche Gehöft hingewiesen, wenn dies das ist, was sie bieten sollten? PS ich habe dieses noch nicht installiert –