在windows下進行linux開發:利用Vagrant+virtualbox


1,介紹Vagrant

我們做web開發的時候經常要安裝各種本地測試環境,比如apache,php,mysql,redis等等。出於個人使用習慣,可能我們還是比較習慣用windows。雖然說在windows下搭建各種開發環境是可行的,各大開發環境都有windows版本。然而在windows下配置有時候會顯得繁瑣,並且還會導致開發環境(windows)和生產環境(lunix)不一致。
能不能在windows下也像linux那樣開發?也許你想到了,用虛擬機。用虛擬機裝個linux系統就好了。裝完linux系統就設置共享目錄,設置網絡端口映射,等等。好像也有那么點繁瑣。
還有,假如我們是一個團隊進行開發,那么每個人的電腦上都要裝個虛擬機+ linux系統+各種運行環境。手動設置麻煩不說,大家的開發環境不太一致(可能你裝了apcahe我裝了nginx等),也是頭疼。能不能把各種設置都自動化,並且保持整個團隊的開發環境一致呢?
Vagrant就是為了解決這個問題而生的。它使用開源 VirtualBox 作為虛擬化支持,可以輕松的跨平台部署。

2,下載

下載VirtualBox:http://download.virtualbox.org/virtualbox/4.3.28/VirtualBox-4.3.28-100309-Win.exe
上面給出的是4.3.28版本的下載鏈接。要下載其他版本請訪問官網https://www.virtualbox.org/wiki/Downloads

下載Vagrant:
https://dl.bintray.com/mitchellh/vagrant/vagrant_1.7.2.msi
上面給出的是1.7.2版本的下載鏈接。要下載其他版本請訪問官網
http://www.vagrantup.com/downloads.html

下載虛擬鏡像:
https://github.com/tommy-muehle/puppet-vagrant-boxes/releases/download/1.0.0/centos-6.6-x86_64.box

上面給出的是centos-6.6鏡像下載鏈接,要下載其他鏡像請訪問官網
http://www.vagrantbox.es/

3,安裝

下載好上面的軟件包后,先安裝VirtualBox,然后安裝Vagrant。都是雙擊即可安裝的(二者的安裝相互獨立),所以沒什么好介紹。下面介紹下怎么把鏡像導入。
先新建一個工作目錄
比如我新建了D:VagrantWorkcentos-6.6-x86_64
打開cmd命令提示符,進入新目錄,以我上面的目錄為例,輸入

        D: cd D:VagrantWorkcentos-6.6-x86_64 

然后輸入命令初始化

vagrant init centos6.6

把下載的centos-6.6-x86_64.box復制到本目錄D:VagrantWorkcentos-6.6-x86_64下,執行

vagrant box add centos6.6 centos-6.6-x86_64.box

檢查是否導入成功

vagrant box list

4,配置

用文本編輯器打開D:VagrantWorkcentos-6.6-x86_64目錄下的Vagrantfile文件便可以進行一些常用配置。
下面列舉出幾個常用的配置。要用到其他配置請訪問官網文檔或者百度谷歌一下。
1,端口映射

config.vm.network :forwarded_port, guest: 80, host: 8080

把上面這句代碼前面的#號去掉。它表示映射本機的8080端口到虛擬機的80端口
2,如果需要自己自由的訪問虛擬機,但是別人不需要訪問虛擬機,可以使用private_network,並為虛擬機設置IP。

config.vm.network :private_network, ip: 192.168.33.10

把上面這句代碼前面的#號去掉即可
3,目錄映射

config.vm.synced_folder "D:/www", "/var/www/html"

如果啟用上面的命令,表示把本機的data目錄共享到虛擬機里的/var/www目錄

5,啟動

進入目錄D:VagrantWorkcentos-6.6-x86_64后執行命令

vagrant up

虛擬機啟動之后則可以通過 vagrant ssh 聯入虛擬機進行進一步的環境配置,或者軟件安裝相關的工作,在Windows系統下,並不能直接通過 vagrant ssh 連到虛擬機,需要使用 Putty,Xshell 等第三方工具進行連接。連接地址127.0.0.1,端口2222。登錄的帳號root的密碼為 vagrant

6,導出

在cmd里進行工作目錄后,執行下面命令

vagrant package

完成后會在當前目錄就會生成package.box,之后新建虛擬機則可使用這個box。如果事先在你的虛擬機里建立好了各種開發環境,那么你直接把這個box給你的團隊其他成員安裝,這樣就可以省去一台台電腦部署的時間,還可以保持開發環境一致。很方便有木有。

7,其他命令

下面列舉出一些常用的cmd操作命令
vagrant up (啟動虛擬機)
vagrant halt (關閉虛擬機——對應就是關機)
vagrant suspend (暫停虛擬機——只是暫停,虛擬機內存等信息將以狀態文件的方式保存在本地,可以執行恢復操作后繼續使用)
vagrant resume (恢復虛擬機 —— 與前面的暫停相對應)
vagrant box remove centos6.6 (移除box,其中centos6.6是box名)
vagrant destroy (刪除虛擬機,刪除后在當前虛擬機所做進行的除開Vagrantfile中的配置都不會保留)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM