Laravel 真的很坑爹,不久前才寫了 Homestead 的安裝方式,Homestead 就出了 2.0,不過其實也沒有差異到非常大啦,讓我們來 step by step 吧。
一樣,先加入 laravel 的 box,現在的版本是 0.2.1。
vagrant box add laravel/homestead
下載完之後,要進行這次最大的改變,使用 composer 安裝啟動 homestead 的相關套件指令,因此我們輸入 composer global require "laravel/homestead=~2.0"
,安裝完畢以後,我們就可以在任意處使用 homestead
相關指令了。
基本指令
destroy Destroy the Homestead machine edit Edit the Homestead.yaml file halt Halt the Homestead machine help Displays help for a command init Create a stub Homestead.yaml file list Lists commands resume Resume the suspended Homestead mach run Run commands through the Homestead ssh Login to the Homestead machine via status Get the status of the Homestead mac suspend Suspend the Homestead machine up Start the Homestead machine update Update the Homestead machine image
基本上指令就是沿用 Vagrant
的常用指令,只不過讓你省去切換到 homestead 資料夾後執行指令這個動作,改用類似 homestead up
替代,接下來我們先執行 homestead init
,執行之後在 ~/.homestead
目錄下會產生 Homestead.yaml
檔案,該檔案就是 homestead 的設定檔,也就是 1.0 的 Vagrantfile
,Windows 的部分存在於 c:/Users/Your_Account/.homestead
,打開檔案後其實跟之前的內容是一模一樣的,就不再贅述了
--- ip: "192.168.1.12" memory: 1024 cpus: 1 authorize: C:/Users/ACCOUNT/.ssh/id_rsa.pub keys: - C:/Users/ACCOUNT/.ssh/id_rsa folders: - map: D:/www/laravel to: /home/vagrant/www/laravel sites: - map: homestead.app to: /home/vagrant/www/laravel/public databases: - homestead variables: - key: APP_ENV value: local
這是我這次的 config,儲存後執行 homestead up
,如果遇到權限問題,請執行 ssh-keygen -t rsa -C "you@homestead"
,啟動完畢後,你可以使用 homestead ssh
進入 server,或者用第三方軟體 ssh ip,預設帳密都是 vagrant,要使用 root 的話密碼也是 vagrant,登入以後,可以切換到 /home/vagrant/www
下,可以看到 Laravel 已經裝好了,1.0 的話要自己在執行 create project
的動作,2.0 之後會幫你自己裝好,切到自己本機 D:/www/laravel
目錄,發現檔案是同步的,安裝部分成功了。
nginx 的部分 homestead 也自動會對應完成,所以我們現在要修改 Windows 下的 C:\Windows\System32\drivers\etc\hosts
,Linux 則是在 /etc/hosts/
,將對應的 domain 加入 192.168.1.12 homestead.app
,開啟我們的 browser,輸入 http://homestead.app
,當你看到美麗的 Laravel logo 之後,美好的事情正要開始 :)