Vagrant是一個基於Ruby的工具,用於創建和部署虛擬化開發環境。它使用Oracle的開源VirtualBox虛擬化系統,可以創建輕量級的,可重現的,便攜的虛擬機環境。
其優勢在於虛擬環境一次安裝,可以分發給團隊多人使用,快速統一團隊開發環境,而且足夠輕量級,佔用資源少。
- 軟件下載
下載地址:
Vagrant:
http://www.vagrantup.com/
VirtualBox:
https://www.virtualbox.org/wiki/Downloads
2. 軟件安裝
安裝VirtualBox、Vagrant。安裝完成後需要重啓。
3. 部署Linux
以Ubuntu操作系統爲例
- 使用命令行cmd來安裝部署vagrant,點擊【開始】菜單,在【運行】欄內輸入cmd,打開命令提示符窗口,建立一個名爲vagrant的工作目錄,以D:\Vagrant\目錄爲例
C:\Users\Administrator>D:
D:\>mkdir vagrant
D:\>
- 使用Vagrant下載Ubuntu的VirtualBox鏡像文件
vagrant box add <name> <url>
vagrant box add lucid32 http://files.vagrantup.com/lucid32.box
- 下載完成後初始化Vagrant虛擬環境
vagrant init
- 啓動虛擬環境
vagrant up
- 激活ssh登錄功能
vagrant ssh
此時就可以使用ssh登錄工具,例如putty登錄了,默認登錄配置爲
IP:127.0.0.1
Port:2222
User:vagrant
Passwd:vagrant
- 支持vagrant的virtual box鏡像有很多操作系統類型,可以到http://www.vagrantbox.es下載
4. 配置
vagrant虛擬環境默認僅支持私有網絡private_network,只有宿主機和vagrant虛擬機能通訊,不能和其他設備進行通訊。我們搭建嵌入式Linux開發環境必須要與嵌入式設備進行通訊,那麼必須啓動public_network。
在Vagrant的工作目錄,找到vagrantfile文件,找到
config.vm.network "public_network"
將其前面的註釋符號“#”刪掉,使虛擬機激活public_network服務。
配置完成後,重新加載一下vagrant虛擬機,,在命令提示行輸入以下命令,重啓虛擬機
vagrant halt
vagrant up
虛擬機啓動時會自動申請局域網IP地址。
5.打包分發
在安裝好tftpd服務器、nfs網絡服務器、交叉編譯環境及拷貝相關源碼後,即可將虛擬環境打包分發給團隊其他成員。
- 打包分發操作流程
打包命令格式:vagrant package --output NAME --vagrantfile FILE
舉例:vagrant package --output lucid32.box--vagrantfile Vagrantfile
- 解包操作流程
(1)首先使用分發獲得的box鏡像創建虛擬機
解包命令格式:
vagrant box add [NAME] [BOX PATH]
舉例:vagrant box add lucid32 lucid32.box
(2)初始化虛擬機</span>
vagrant init
(3)啓動虛擬機,並激活SSH登錄功能
<pre name="code" class="cpp">vagrant up vagrant ssh
6.常用指令
#移除虛擬機
vagrant remove [name]
#重啓虛擬機
vagrant reload [name]
參考:
http://blog.csdn.net/jillliang/article/details/8251242http://blog.csdn.net/zuopaide/article/details/41186325http://www.csdn.net/tag/vagrant