vagrant的一個非常重要的功能就是在你的同事之間分享你的box從而使大家的開發(fā)環(huán)境保持同步,打包[package]正是實現(xiàn)這一功能的關(guān)鍵所在。
創(chuàng)新互聯(lián)建站長期為近千家客戶提供的網(wǎng)站建設(shè)服務(wù),團隊從業(yè)經(jīng)驗10年,關(guān)注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為沂南企業(yè)提供專業(yè)的成都網(wǎng)站設(shè)計、成都做網(wǎng)站,沂南網(wǎng)站改版等技術(shù)服務(wù)。擁有十多年豐富建站經(jīng)驗和眾多成功案例,為您定制開發(fā)。(寫到這里我想到vagrant是否提供一種通過配置中心主機實現(xiàn)對其他虛擬主機進行軟件更新的作用,這樣就不用重新打包了,或者這是puppt的業(yè)務(wù)所在?)
vagrant package的命令很簡單,不過有些地方官方文檔并沒有說清楚,我在這里補充一下
vagrantpackage-hUsage:vagrantpackage[options][name]Options: --baseNAMEvirtualbox程序里面的虛擬機的名稱,不是box的名字也不是Vagrantfile里面的虛擬機名稱.默認(rèn)是打包當(dāng)前目錄下面的虛擬機。 --outputNAME要打包成的box名稱,不會自動添加.box后綴,要手動加.默認(rèn)值package.box--includeFILE...打包時包含的文件名,你可以把.box文件理解為一個壓縮包 --vagrantfileFILE打包時包含的Vagrantfile文件,原理和上面類似 -h,--helpPrintthishelp
演示:vagrant package –base virtualbox_vm_name –output newbox_name.box
1.把這個newbox_name.box文件拷貝到你到小伙伴到機器上;
2.在機器上執(zhí)行vagrant box add newbox_names newbox_name.box就可以把這個box添加到這臺機器的box列表里面;
3.在需要搭建開發(fā)環(huán)境的目錄下面執(zhí)行vagrant init newbox_names,這樣就初始化了一個虛擬機環(huán)境,然后執(zhí)行vagrant up,你的小伙伴就可以得到一個和你完全一樣的開發(fā)環(huán)境了。
在初始化環(huán)境的時候需要注意的一點是:這個目錄下面如果以前初始化過,那么請執(zhí)行vagrant destroy命令把這個環(huán)境銷毀掉,并刪除Vagrantfile文件,或者在windows環(huán)境下直接手動刪除.vagrant目錄和Vagrantfile文件有相同的效果。否則vagrant init命令無效,當(dāng)你vagant up的時候得到的是一個和以前完全一樣的環(huán)境。