VirtualBox + Vagrant

 

它們分別是什麼?git

VirtualBox:github

號稱是最強的免費虛擬機軟件和VM相似。web

不只具備豐富的特點,並且性能也很優異。shell

Vagrant:segmentfault

是一個基於Ruby的工具,用於建立和部署虛擬化開發環境。centos

使用Oracle的開源VirtualBox虛擬化系統,使用Chef建立自動化虛擬環境。服務器

解決了什麼問題?ide

讓「代碼在我機子上運行沒有問題」 這種說辭將成爲歷史。工具

原理:性能

咱們能夠經過Vagrant封裝一個Linux的開發環境分發給團隊成員。成員能夠在本身喜歡的桌面系統(Mac/Windows/Linux)上開發程序,代碼卻能統一在封裝好的環境裏運行,很是霸氣。

如何安裝?

安裝VirtualBox:

https://www.virtualbox.org/wiki/Downloads

安裝Vagrant:

http://downloads.vagrantup.com/

下載系統鏡像。[Centos版本:6.5]

http://www.vagrantbox.es/

舒適提示:安裝不一樣的版本,有可能會出現意想不到的錯誤。

具體操做

添加鏡像到Vagrant:

鏡像的存放位置爲/home/box/centos65.box

cd/home/box/

vagrant box add centosbox centos65.box

初始化開發環境:

vagrant init centosbox #初始化

vagrant up#啓動環境

SSH登錄:

利用Xshell、Putty、SecureCRT等登陸。

Ip : 127.0.0.1

Port : 2222

Username : root

Password : vagrant

經常使用配置

Vagrant初始化成功後,會在初始化的目錄裏生成一個Vagrantfile文件,

能夠修改該文件進行個性化的定製。

配置IP:

config.vm.network :private_network, ip: 「192.168.33.10」[去掉#]

你能夠把IP改爲其餘地址,只要不產生衝突就行。

配置同步目錄:

config.vm.synced_folder 「../data」, 「/vagrant_data」 [去掉#,修改成下面]

config.vm.synced_folder 「/home/web/www」, 「/data/www「

/home/web/www:本地目錄,/data/www:Linux服務器目錄

配置虛擬內存:

在文件結尾end字符前添加下面一段:

config.vm.provider :virtualbox do |vb|

vb.customize ["modifyvm", :id, "--memory", "2048"]

end

舒適提示:修改配置後 記得 重啓虛擬機。

打包分發

當你配置好開發環境後,退出並關閉虛擬機。

在終端裏對開發環境進行打包:

vagrant package

打包完成後會在當前目錄生成一個package.box的文件,

將這個文件傳給其餘用戶,

其餘用戶只要添加這個box並用其初始化本身的開發目錄,

就能獲得一個如出一轍的開發環境了。

經常使用命令

vagrant init #初始化

vagrant up #啓動虛擬機

vagrant halt #關閉虛擬機

vagrant reload #重啓虛擬機

vagrant status #查看虛擬機運行狀態

幫助文檔

http://segmentfault.com/blog/fenbox/1190000000264347

http://www.tuicool.com/articles/aErYJj

https://github.com/jedi4ever/veewee/issues/970

相關文章
相關標籤/搜索