2015-07-04 19 views
9

Ho installato con successo Vagrant e alcune finestre sul mio PC Windows. Devo dire che funziona benissimo, creando e distruggendo le VM con diverse configurazioni al volo.Installazione di Composer con Vagrant

L'unico problema che sto affrontando ora è che voglio installare il compositore. Ma il compositore richiede che tu faccia riferimento a php.exe per farlo. Non voglio installare PHP sul mio computer, altrimenti non ha senso usare Vagrant, giusto. Come posso affrontare questo problema?

Ho visto alcuni articoli sull'uso di Puppet, ma non ho avuto molto senso da loro.

Grazie in anticipo.

risposta

14

Hai solo bisogno di installare PHP (e curl) nella tua scatola vagabonda. Ad esempio, eseguire vagrant ssh per ottenere l'accesso SSH alla tua casella ed eseguire i seguenti comandi:

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

Ora sei pronto per utilizzare il comando composer nella tua casella di vagabondo.

È possibile migliorare questo rendendo questa parte del provisioning, il passaggio in cui una casella viene impostata durante l'esecuzione di vagrant up. Per fare questo, mettere i comandi sopra in un file della shell (per esempio 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 

Ora, configurare il file di shell come un passo disposizione nella vostra 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 

Ora, quando si esegue vagrant init, il file di shell viene eseguito e vengono installati php & compositore.

È inoltre possibile scegliere di utilizzare una casella con php e compositore preinstallato, ad esempio laravel/homestead.

+0

Grazie, ho capito. Sto usando la scatola della fattoria, funziona perfettamente. – JasonK

+0

Grazie. Quindi quando eseguiamo i comandi del compositore nella nostra casella vagrante rifletteranno anche le modifiche sui file sulla mia macchina Windows host? Inoltre, che ne dici di git? Dobbiamo installare git su Windows Host o nella casella vagabonda? Grazie ancora –

0

C'è anche una casella vagante con il compositore preinstallato. Ecco il GitHub per questa casella: https://github.com/Swader/homestead_improved. Con Git Bash per Windows, accedere alla cartella in cui è stato installato/homestead_improved.

Corsa vagante verso l'alto;, vagrant ssh per entrare nella macchina virtuale.

Una volta all'interno della macchina virtuale cd all'interno del/Code dir. È ora possibile utilizzare il compositore, ad esempio composer global require "laravel/installer=~1.1" per installare il programma di installazione di Laravel.

+0

questo è il punto che il mio vagabondo non ha preinstallato il computer. a che serve se non ce l'ha? perché laravel ci indica una casa sbagliata se questo è quello che dovrebbero fornire? PS non l'ho ancora installato –

Problemi correlati