2014/12/01

Homestead 2.1

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 之後,美好的事情正要開始 :)

沒有留言: