在Mac下安裝使用Vagrant

閆肅的部落格發表於2015-03-09

Vagrant是一款用來構建虛擬開發環境的工具,它其實算是一個跨平臺的虛擬機器管理工具。

安裝

安裝Vagrant

Vagrant的舊版本是可以通過gem來安裝的,但是由於依賴實在太多,官方放棄了這種安裝方式,建議下載官方安裝包來安裝。

下載地址在http://www.vagrantup.com/downloads。下載好pkg包後,點選安裝即可。

安裝Virtualbox

Vagrant依賴現有的虛擬機器軟體來管理虛擬機器,如Virtualbox, Vmware Fusion, Parallel Desktop等,其中最方便的是VirtualBox,所以我選擇了Virtualbox。

下載地址在https://www.virtualbox.org/wiki/Downloads。同樣下載好後直接安裝。

使用

下載啟動Box

在Vagrant中,box是一種打包好的映象,通過這個映象,可以生成相應的虛擬機器。box可以通過官方網站下載,也可以自己製作,在團隊內分享。

官方的Box可以在建立時自動下載。例如以下步驟

cd ~/Documents/Vagrant/Ubuntu  # 進入一個vagrant虛擬機器目錄,一個目錄管理一個虛擬機器
vagrant init hashicorp/precise32 # 建立一個ubuntu的虛擬機器
vagrant up # 啟動這個虛擬機器

通過這個步驟,vagrant會去box列表中找hashicorp/precise32這個映象,如果沒有就去官方下載。Box被儲存在~/.vagrant下。通過命令

vagrant box list

可以檢視已經下載的box。如果想以這個box再建立一個虛擬機器,只要再建立一個目錄,例如~/Documents/Vagrant/Ubuntu32,然後執行

vagrant init hashicorp/precise32

即可。

操作虛擬機器

操作虛擬機器時,必須進入剛剛建立的目錄中去,這個目錄中必須含有init命令建立的Vagrantfile檔案。常用命令有

$ vagrant init  # 初始化
$ vagrant up  # 啟動虛擬機器
$ vagrant halt  # 關閉虛擬機器
$ vagrant reload  # 重啟虛擬機器
$ vagrant ssh  # SSH 至虛擬機器
$ vagrant status  # 檢視虛擬機器執行狀態
$ vagrant destroy  # 銷燬當前虛擬機器

共享資料夾

通過Vagrant建立的虛擬機器和Mac共享檔案非常容易,虛擬機器中/vagrant目錄會對映到我們本地虛擬機器目錄中。例如

cd ~/Documents/Vagrant/Ubuntu
vagrant up
vagrant ssh
cd /vagrant
ls

這個時候,我們會看到,這裡顯示的檔案和~/Documents/Vagrant/Ubuntu下是一樣的。

共享Box

如果只有上述功能的話,那麼Vagrant的作用就不是那麼殺手級了。通過命令

vagrant package

可以將一個虛擬機器打包成Box,供別人使用。別人只要用打包的box來建立一個虛擬機器即可,例如

vagrant box add myubuntu ~/Documents/Vagrant/Ubunutu/ubunut.box

參考

Vagrant Docs

使用 Vagrant 打造跨平臺開發環境

相關文章