0 Vagrant是什么?
使用虛擬機(jī)需要配置它使用的iso,CPU內(nèi)存硬盤網(wǎng)絡(luò)等,而vagrant可以用腳本來管理這些,而且可以創(chuàng)建一組。相當(dāng)于是Infracture as Code,使用代碼來管理基礎(chǔ)架構(gòu)。
1 在Mac上安裝
官網(wǎng)下載,雙擊安裝
2 在Mac上使用vmware_fusion provider
官網(wǎng)購(gòu)買,得到郵件說明和license文件
在Vagrant官網(wǎng)下載安裝VMWareUtility
vagrant plugin install vagrant-vmware-desktop
vagrant plugin license vagrant-vmware-desktop license.lic
3?下載和添加box(供vmware_desktop provider使用)
hashicorp/precise64版本1.1.0的下載地址,官網(wǎng)說明
下載有可能是在墻外,下載地址我是等輸入命令后,復(fù)制的顯示出來的地址,并使用Ctrl+C終止命令
然后把下載的文件添加到本地:
vagrant box add hashicorp/precise64 downloaded.file
它不會(huì)給標(biāo)記版本號(hào),如果想標(biāo)記:
cd ~/.vagrant.d/boxes/hashicorp-VAGRANTSLASH-precise64/
mv 0 1.1.0
centos/7版本1812.01版本的下載地址,官網(wǎng)說明
vagrant box add centos/7 downloaded.file
cd ~/.vagrant.d/boxes/centos-VAGRANTSLASH-7/
mv 0 1812.01
其實(shí)mv只是強(qiáng)制暴力方法,正式方法見下面鏈接
參考鏈接,Centos1812.01鏡像發(fā)布說明
vagrant離線添加后修改版本
4 創(chuàng)建項(xiàng)目文件夾和啟動(dòng)
在新創(chuàng)建的空文件夾中寫命令:
vagrant init centos/7
此時(shí)產(chǎn)生了Vagrantfile文件,修改它,在config.vm.box這一行后添加:
config.vm.box_version = 1812.01
config.vm.box_check_update = false
這樣啟動(dòng)時(shí)就不會(huì)訪問外網(wǎng)檢查更新了
5?啟動(dòng)、關(guān)閉,在資源庫顯示
啟動(dòng)后,可以vagrant ssh進(jìn)去,可以vagrant destroy關(guān)機(jī)并刪除文件
可是,在vmware_fusion的虛擬機(jī)資源庫中,沒有這臺(tái)虛擬機(jī)?要在Vagrantfile中加入:
config.vm.provider "vmware_desktop" do |v|
v.gui = true
end
這時(shí)vagrant destroy會(huì)刪除虛擬機(jī)文件,但不會(huì)刪除資源庫中的列表項(xiàng),需要手工刪除