如果要把vagrant 拆解一下的話
基本上vagrant 就是由Vagrantfile 和 vagrant command
vagrantfile 我們前幾天已經花了不少時間介紹
今天我們來看看操作 Vagrant 的指令參數
我會將他們分成幾種不同的類別介紹,而且省略vagrant 前面這個指令
(也就是說,up 這個參數,你在下指令時就是打 vagrant up)
====
操作 VM 的指令
是同步或是依序開啟取決於你的 provider
假設是AWS 就支援同步開啟多個 vm的功能
假設是local vm(Virtualbox, VMware Workstation/fusion) 就會是依序開啟
開啟時假設有定義 Provsion
則會在第一次開啟時跑一次provision
注意 只有第一次 run vagrant up 時會跑
vm 開啟之後若是需要再跑 provision
要使用 vagrant provision 指令
假設你在 vagrantfile 中定義了多個機器
你可以用
vagrant up < vm name 1> [ <vm name 2> ....]
來指定要開啟哪幾台機器
或者直接下vagrant up 開啟所有的機器
這個指令和 vagrant up 基本上是使用頻率最高的
為什麼呢
因為用vagrant 開啟vm 好簡單
所以用完的vm 直接刪掉好方便
在多台虛擬機器定義的情況下與 vagrant up 相同
可以用
vagrant destroy < vm name 1> [ <vm name 2> ....]
來刪除指定的機器
有些時候你的環境需要保留
你又不希望虛擬機器繼續吃資源
可用halt 先關掉目前的機器
多台機器操作同vagrant up
suspend
使目前虛擬機器待機
多台vm 時操作同 vagrant up
resume
當你使用 suspend 後
使用 resume 開啟虛擬機器
status
同樣是使用頻率很高的指令
可看目前的 vm 的狀態 ,和使用中的 provider
running表示 vm 已建立且開啟中
suspended 表示 vm 已建立且待機中
not created 表示 vm 尚未建立,用 vagrant up 來開啟vm
global-status
超方便的指令,顯示你目前實體機器上所有開啟的vm狀態
通常我們不會只有一個 vagrantfile
有時候可能會忘記你已開啟一個vm 且你的 vagrantfile在哪裡
用 vagrant global-status 可以讓你找到你的vm
===
更多指令
下集待續