在九月寫了 Laravel Homestead 的基礎介紹,最近 Laravel 推出 Laravel Homestead 2.0,在 1.0 套件是沒有支援 homestead
指令,現在 2.0 可以直接使用 homestead
指令,前置安裝 Vagrant + Virtualbox 就不在此介紹了。
安裝 Homestead
如同上面所說,以前是直接 clone homestead 專案下來就包含了全部 config 檔案,2.0 則是直接支援 homestead
指令,可以直接透過 composer 來安裝
$ composer global require "laravel/homestead=~2.0"
完成後可以在使用者目錄發現 ~/.composer/vendor/bin
目錄,此目錄內會含有 homestead
指令,所以只要把 ~/.composer/vendor/bin
寫入到 PATH
變數即可,直接寫到使用者 .bashrc
或 .zhsrc
設定黨內即可,接著如何產生 Homestead 設定檔,請執行底下指令
$ homestead init
到使用者目錄可以看到 ~/.homestead
裡面就含有 Homestead.yaml
設定檔,將此檔案打開
--- ip: "192.168.10.10" memory: 2048 cpus: 1 authorize: ~/.ssh/id_rsa.pub keys: - ~/.ssh/id_rsa folders: - map: ~/Code to: /home/vagrant/Code sites: - map: homestead.app to: /home/vagrant/Code/Laravel/public databases: - homestead variables: - key: APP_ENV value: local
可以發現跟 1.0 不一樣的地方在於,現在 2.0 可以直接指定 Databases,以及區域變數。另外在 ~/.homestead
下可以發現多了 after.sh
,詳細說明如下
If you would like to do some extra provisioning you may add any commands you wish to this file and they will be run after the Homestead machine is provisioned.
意思是說,中途要增加任何 command 可以將指令寫到 after.sh
後,直接執行 vagrant provision
即可,而不用登入 vagrant ssh
。2.0 變化大致如下
- 支援 homestead 指令
- 增加 database 及 variables 設定
- 增加 after.sh
詳細介紹可以參考 Introducing Laravel Homestead 2.0,更多介紹可以參考 Laravel Homestead 官方文件,或者直接看 Laracasts 教學影片。