Vagrant box 命令彙總彙總

weiqier發表於2019-10-07

vagrant box命令

用於管理boxes的命令,比如新增、刪除等等。
此命令的功能主要通過以下子命令完成:

  • add
  • list
  • outdated
  • prune
  • remove
  • repackage
  • update

Box Add

用法:vargant box add ADDRESS
通過地址新增一個vagrant box,地址可是如下幾我們:

  • 來自可用Vagrant映象公共目錄中的速記名。
  • 檔案路徑或者可用Vagrant映象公共目錄中提供的URL。
  • 一個直接指向box的URL,此種情況下,需要指定–name標誌,另處版本管理與升級服務將不可用。
  • 如果在下載過程中出現了錯誤或者通過Ctrl C出現了中斷,下次請求時Vagrant會繼續下載,僅在最初下載後24小時之內有效。
    Options:

  • –box-version VALUE:想要新增的box版本,預設情況下新增最新版本。可以是明確的版本號,也可以是一種比如">=1.0,<2.0"這樣的區間集。
  • –cacert CERTFILE:指定用於CA認證的證照,此選項在遠端端不是使用標準CA的情況下使用。
  • –capath CERTDIR:指定用於CA認證的證照所在的目錄,同樣用於遠端端不是使用標準CA的情況下。
  • –cert CERTFILE:當下載時如果需要,指定一個客戶端證照。
  • –clean:如果使用,Vagrant將會刪除原先使用相同URL下載的老的臨時檔案。此選項在你不想繼續原來的下載(比如原先下載的資源內容改變了)時非常有用。
  • –force:如果使用,將覆蓋存在的同名的box。
  • –insecure:如果使用,使用HTTPS的URL時,不驗證SSL證照。
  • –provider PROVIDER:如果使用,Vagrant將驗證你要新增的box的提供者,預設情況下,Vagrant自動檢測合適的提供者使用。

Box List

用法:vagrant add list

展示所有安裝到Vagrant的boxes。

Box Outdated

用法:vagrant box outdated

此命令告知你你當前所使用的box是否需要更新。如果在其後面新增–global選項,將會檢查所有已安裝box是否需要更新。

此命令需要網路連線。

Box Prune

用法:vagrant box prune

此命令用於刪除已安裝box的老舊版本,如果是正在使用的則提示是否確定刪除。

可用選項:

  • –provider PROVIDER:通過指定提供者刪除。
  • –dry-run:列印將被刪除的boxes。
  • –name NAME:指令檢查老舊版本的box名稱。
  • –force:強制刪除,正在使用也不提示。

Box Remove

用法:vagrant box remove NAME
從Vagrant中刪除匹配指定名字的box。
如果一個box有多個providers,需要使用–provider明確指定提供者。如果一個box有多個版本,可以通過使用–box-version指定要刪除的版本,也可以使用–all刪除所有。
可用選項:

  • –box-version VALUE:指定要刪除的box版本。
  • –all:表示要刪除box的所有版本。
  • –force:強制刪除,正在使用也不提示。
  • –provider VALUE:刪除指定提供者對應的box。

Box Repackage

用法:vagrant box repackage NAME PROVIDER VERSION
打包指定的box到當前資料夾,可用於重新發布。指定box的名字、提供者、版本號需要可通過vagrant box list命令檢索到。
當你新增一個box時,Vagrant會開啟它並內部儲存,原始的.box檔案是不被保留的。此命令是用於將已安裝的box重新打包為.box檔案。

Box Update

用法:vagrant box update
此命令用於存在可用更新時更新當前Vagrant環境中的box,也可以通過–box指定單獨要更新的box。
如果你只是想檢視可用更新,使用 box outdated命令。
可用選項:

  • –box VALUE:指定要更新box的名稱。
  • –provider VALUE:如果使用了–box,此選項控制更新指定提供者的box。只用多個提供者時才使用,不使用–box時此選項無效。

$ vagrant init      # 初始化
$ vagrant up        # 啟動虛擬機器\
$ vagrant halt      # 關閉虛擬機器\
$ vagrant reload    # 重啟虛擬機器\
$ vagrant ssh       # SSH 至虛擬機器\
$ vagrant suspend   # 掛起虛擬機器\
$ vagrant resume    # 喚醒虛擬機器\
$ vagrant status    # 檢視虛擬機器執行狀態\
$ vagrant destroy   # 銷燬當前虛擬機器\
\

$ vagrant box list    # 檢視本地box列表\
$ vagrant box add     # 新增box到列表

$ vagrant box remove  # 從box列表移除

本作品採用《CC 協議》,轉載必須註明作者和本文連結

Practice makes perfect !