使用Vagrant在Windows下部署開發環境

Vagrant介紹

Vagrant可以提供可配置、可再生、便攜的工作環境,它主要是一箇中間層技術,它的下層是VirtualBox,VMware等虛擬機軟件,它的上層是配置管理系統工具,比如Shell Scripts,Chef,Puppet等可以自動化安裝和配置軟件的工具。

對你有什麼用

對於開發人員來說,Vagrant可以幫你統一團隊成員的開發環境。如果你或者你的夥伴創建了一個Vagrantfile,那麼你只需要執行vagrant up就行了,所有的軟件都會安裝並且配置好。團隊成員可以通過相同的Vagrantfile來創建他們的開發環境,無論他們是在Linux, Mac OS X,或者Windows下,這樣就可以保證你團隊成員的代碼是跑在相同的環境中,從而避免令人煩躁的在我的機器上是可以的問題。

對於運維人員來說,Vagrant可以給你提供一次性,並且與線上一致的服務器環境,你可以利用VirtualBox來測試你的管理腳本,不需要再登錄到線上服務器測試了。

對於設計人員來說,Vagrant可以幫你處理一切,你只需要專注在設計上就好了。一旦開發人員幫你配置好了Vagrant之後,你只需要執行vagrant up,然後開始設計。工具和環境如下:

 

工具及環境

版本

下載地址

宿主機環境

Win8.1


VirtualBox

VirtualBox-5.0

https://www.virtualbox.org/

Vagrant

vagrant_1.7.4

http://www.vagrantup.com/

Xshell

xshell_5.0

http://www.netsarang.com/download/main.html

 

1. 安裝 VirtualBox

Vagrant只是一個虛擬環境的容器,具體虛擬化的實現,依賴外部的虛擬機,例如VirtualBox和VMware,一般使用VirtualBox來搭建,免費小巧,在Windows系統上下載安裝VirtualBox for Windows hosts版。

下載地址:https://www.virtualbox.org/wiki/Downloads

 

2. 安裝 Vagrant

 

根據提示一步步安裝,安裝的過程中會自動配置系統變量,不需要再手工配置。

下載地址:http://downloads.vagrantup.com/ 

 

3.導入封裝好的鏡像

 

boxes是什麼?就是各種已經打包好的虛擬環境鏡像,供Vagrant使用。啓動命令提示符,通過cd命令進入box鏡像存放的目錄,在終端裏輸入:

vagrant box add hello ./package.box

 

hello是我們給這個box取的名字,./package.box是box的路徑,如果放在其他目錄需要在文件前添加相對路徑,用絕對路徑會提示找不到文件,建議box和vagrant的bin程序都放在同一個分區中,用相對路徑添加。

 

4.初始化開發環境

 

在本地創建一個開發目錄(比如:D:\Code),用來和虛擬環境的開發目錄同步,用命令行切換到開發目錄裏,初始化當前目錄的環境:

cd d:\code # 切換目錄
vagrant init hello  # 初始化目錄環境

初始化開發環境後會自動生成一個Vagrantfile文件,用來配置vagrant的行爲所創建虛擬機的信息,修改默認的Vagrantfile:      

VAGRANTFILE_API_VERSION = "2"
 
path = "#{File.dirname(__FILE__)}"
 
require 'yaml'
require path + '/scripts/homestead.rb'
 
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
  Homestead.configure(config, YAML::load(File.read(path + '/Homestead.yaml')))
End


修改Homestead.yaml文件,修改map爲本地的開發目錄,to爲在虛擬環境中映射的目錄:

 

folders:
    - map: d:/phpcode
      to: /home/vagrant/Code


修改homestead.rb文件,找到下面一行,修改爲前面命名的box名稱:    

 

config.vm.box = "hello"

  5.啓動虛擬開發環境

 

vagrant up  # 啓動環境


如果不出現錯誤,一個vagrant環境就已經配置好了。打開VirtualBox會看到終端顯示了啓動過程,啓動完成後,我們就可以登錄SSH:

vagrant ssh # SSH登錄


Windows 終端並不支持ssh,所以需要安裝第三方SSH 客戶端,這裏使用的是Xshell 5。登錄SSH,剩下的步驟就是在SSH客戶端裏通過虛擬機配置你要運行的各種環境和參數。

  

6.用SourceTree克隆項目代碼到本地開發目錄中。

 

7.配置nginx服務器

 

最後修改host文件,將虛擬環境的域名映射到本地80端口,重啓虛擬機,在本地通過配置好的域名就可以訪問項目了。

  

8.常用管理命令

 vagrant up (啓動虛擬機)

vagrant halt (關閉虛擬機——對應就是關機)

vagrant suspend (暫停虛擬機——只是暫停,虛擬機內存等信息將以狀態文件的方式保存在本地,可以執行恢復操作後繼續使用)

vagrant resume (恢復虛擬機 —— 與前面的暫停相對應)

vagrant destroy (刪除虛擬機,刪除後在當前虛擬機所做進行的除開Vagrantfile中的配置都不會保留)


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