基於Vagrant 和 Homestead快速搭建Laravel開發環境

詳細教程參看:http://laravelacademy.org/post/7658.html

簡介

Laravel 爲開發者提供了一套完善的重量級本地開發環境 —— Laravel Homestead。

Laravel Homestead 實際是一個打包好各種 Laravel 開發所需軟件和工具的 Vagrant 盒子(關於 Vagrant 盒子的釋義請參考 Vagrant 官方文檔),該盒子爲我們提供了一個優秀的開發環境,有了它,我們不再需要在本地環境安裝 PHP、Composer、Nginx、MySQL、Memcached、Redis、Node 等其它工具軟件,我們也完全不用再擔心誤操作搞亂操作系統 —— 因爲 Vagrant 盒子是一次性的,如果出現錯誤,可以在數分鐘內銷燬並重新創建該 Vagrant 盒子!

前期準備

本機環境:Windows

  1. 下載並安裝 Virtual Box最新版 - Here
  2. 下載並安裝 Vagrant 最新版 - Here
  3. 下載你需要的Homestead box文件 - Here
    // 不然自動安裝時那速率異常感人

安裝

1.把下載好的Homestead-Box文件放置在你的項目根目錄中,如:C:\project
2.在同一個目錄新建metadata.json文件(通過這種方式配置可以避免Vagrant無法識別Box文件版本導致執行異常問題)

metadata.json文件如下:

{
    "name": "laravel/homestead",
    "versions": 
    [
        {
            "version": "3.0.0",
            "providers": [
                {
                  "name": "virtualbox",
                  "url": "Homestead-Box.box"
                }
            ]
        }
    ]
}

3.添加名稱爲laravel/homestead的Box:vagrant box add laravel/homestead C:/project/metadata.json
4.vagrant box list查看是否添加成功
5.安裝Homestead:

cd C:/project
git clone https://github.com/laravel/homestead.git Homestead
cd Homestead
git checkout v6.1.0 #切換到穩定版本

6.初始化:在 Homestead 目錄下運行 bash init.sh 命令來創建 Homestead.yaml 配置文件,生成的 Homestead.yaml 配置文件文件位於當前 Homestead 目錄

// Mac/Linux...
bash init.sh

// Windows...
init.bat

7.配置 Homestead,具體參考文章頂部連接的教程,設置同步目錄和虛擬域名等
8.修改Hosts文件
9.啓動vagrant up

安裝時遇到的問題

由於本機(Windows)的賬戶是中文,導致~/目錄路徑包含中文字符,Vagrant會在執行Vagrant up指令時發生類似如下錯誤:

D:/HashiCorp/Vagrant/embedded/gems/gems/childprocess-0.5.3/lib/childprocess/wind
ows/process_builder.rb:43:in `join': incompatible character encodings: GBK and UTF-8

上網查了相關資料後,定位到問題後:
1. 修改本機VAGRANT_HOME環境變量到新的目錄路徑並把~/.vagrant.d目錄移到新目錄即可:
2. 修改VirtualBox的默認虛擬電腦位置

#我修改到了D:\temp目錄
1. setx VAGRANT_HOME "D:/temp/.vagrant.d/" /M #永久修改環境變量,成功後重啓
2. 打開VirtualBox,全局設定-常規-默認虛擬電腦位置:修改爲 D:\temp\VirtualBox VMs
3. 重新執行 Vagrant up 指令

參看:類似問題

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章