Skip to content

Vagrant

開發環境管理自動化工具

軟體分類 生產力 / 開發工具
軟體標籤
開發廠商 HashiCorp
Stars
27.2k
Forks
4.4k
License
MIT LICENSE
Version
v2.3.7
Update
2026-03-13
OS

產品說明

Vagrant 是一款開源的開發環境自動化工具,旨在提供一個跨平台且一致的工作流程。它並非虛擬化引擎(如 VirtualBox),而是作為虛擬化技術的上層包裝與管理器。透過一個名為 Vagrantfile 的純文字設定檔,使用者可以定義虛擬機的規格(如 CPU、記憶體)、作業系統版本以及網路設定。

Vagrant 最強大的地方在於其「可重現性」。當新成員加入專案時,只需下載程式碼並執行啟動指令,系統就會自動下載映像檔(Boxes)並完成所有配置,確保每位開發者的環境與生產伺服器完全一致。它也支援與 Ansible 等工具整合,在啟動時自動安裝必要的資料庫與開發套件。

核心特色:

  • 跨平台一致性:無論 Host 是 Windows 或 macOS,虛擬環境內的行為皆完全一致。
  • 龐大的映像檔庫:透過 Vagrant Cloud,可輕鬆下載各種預先配置好的 Linux 發行版。
  • 資料夾同步:支援將實體主機的程式碼目錄同步到虛擬機內,實現「本地編輯,遠端運行」。
  • 多供應商支援:支援 VirtualBox、VMware、Hyper-V 甚至 Docker 作為底層容器。

常用指令

Vagrant 的操作非常直覺,主要透過命令列執行環境的生命週期管理:

基礎操作流程

# 初始化 Vagrant 環境,產生預設的 Vagrantfile
vagrant init ubuntu/focal64

# 啟動虛擬環境 (若為第一次執行,會自動下載映像檔)
vagrant up

# 透過 SSH 進入該虛擬機
vagrant ssh

# 暫停虛擬機 (儲存目前狀態)
vagrant suspend

# 關閉並刪除虛擬機 (釋放硬碟空間)
vagrant destroy
常用指令功能說明使用時機
vagrant status查看環境運行狀態確認虛擬機是否正在運作中時
vagrant reload重啟並讀取新設定修改 Vagrantfile 中的網路或資源分配後
vagrant provision重新執行自動化配置當更新了 Ansible 腳本或安裝腳本後時
**