Laravel Homestead 開發環境的安裝與配置

安裝 VirtualBox

  • 一個虛擬機軟件
  • 提供虛擬環境支持,運行虛擬機

安裝 Vagrant

  • 一個建立虛擬機的軟件
  • 使用它建立 Homestead 虛擬機

使用 Vagrant 增長封裝包(Homestead box)

  • vagrant box add laravel/homestead
  • 建立了一個 laravel/homestead 虛擬機盒子
  • 一個集成了(Nginx,PHP,MySQL,Postgres,Redis,Memcached)的虛擬機

安裝和使用 Homestead (管理腳本)

  • git clone https://github.com/laravel/homestead.git Homestead
  • 一個使用 Ruby 和 Shell 寫成的腳本
  • ~/Homestead/Homestead.yaml 讀取配置信息,在 provision 時解析爲 Vagrant 命令,以此進行對虛擬機的配置

初始化配置文件

  • 建立 Homestead.yaml 配置文件
    • linux: bash init.sh
    • windows: ./init.sh

配置 Homestead.yaml

  • 虛擬機設置
    • ip
    • memory
    • cpus
    • provider
  • SSH 密鑰登錄配置
    • authorize
    • keys (數組選項,填寫本機的 SSH 私鑰文件地址)
  • 共享文件夾配置
    • folders (將本機上的文件夾映射到虛擬機)
      • map (對應本機文件夾)
      • to (對應 Homestead 上的文件夾)
  • 站點配置
    • sites (在本機經過域名訪問虛擬機裏的應用)
      • map (對應站點域名)
      • to (對應 Homestead 上的文件夾)
  • 數據庫配置
    • databases (指定數據庫名稱)
  • 自定義變量
    • variables
      • key
      • value

運行 Vagrant

  • 進入 Homestead (管理腳本)目錄
    • cd ~/Homestead
  • 啓動 vagrant
    • vagrant up
  • 經過 SSH 登陸 Homestead 虛擬機

安裝 Laravel

  • 根據 Homestead.yaml 中 sites 的設置,使用 composer 建立 Laravel 項目
    • composer create-project laravel-laravel Laravel --prefer-dist "5.5.\*"

經過主機訪問 Laravel 站點

  • 在主機中經過 Homestead sites.map 中設置的域名,訪問虛擬機中的站點

安裝流程總結:

  1. 經過 Vagrant 將 Homestead box 添加到 VirtualBox
  2. 經過 Homestead 管理腳本,生成配置文件
  3. 經過配置文件中的 folders 與 sites 設置,達到主機與虛擬機通訊的目的
  4. 經過 Homestead 管理腳本,影響 Vagrant 的行爲,從而達到配置虛擬機的目的

虛擬環境啓動流程總結

  1. 從 Homestead管理腳本 目錄中運行 Vagrant
  2. Homestead管理腳本 讀取 Homestead.yaml 中的數據,並解析爲 Vagrant 命令
  3. Vagrant 根據 Homestead管理腳本 的配置,啓動虛擬機

開發流程總結

  1. 在 Homestead管理腳本 目錄 啓動 Vagrant
  2. 此時 Homestead.yaml 中,folders.map 中設置的主機文件夾,已與 folders.to 中設置的虛擬機文件夾實現了共享,只須要在 folders.map 設置的主機文件夾下進行開發便可
  3. 經過 Homestead.yaml 中 sites.map 中設置的域名,便可訪問虛擬機上的站點內容

訪問流程總結

  1. 在瀏覽器中訪問 www.test.com
  2. 瀏覽器根據 host 文件,將域名解析爲設置的虛擬機地址,並訪問該 ip 地址
  3. 虛擬機的 80 端口偵聽到訪問,返回網站內容到主機瀏覽器
  4. 主機上的瀏覽器顯示網站內容

參考文章:

Laravel 教程 - Web 開發實戰入門 linux

相關文章
相關標籤/搜索