Vagrant 介紹與安裝 | 第一章

2024-01-010.27DevOpsVagrantVagrant 介紹與安裝 | 第一章

前言

軟體開發的生命週期中,建置環境算是首要任務,我們可能使用 VM 來構建自己想要的環境,模擬產品在正式環境的情況 

雖然有docker,但如果設備是 windows 作業系統,仍然需要 VM 的幫助安裝 Linux ,才能使用 docker

市面上有很多種 Provider (如: VirtualBox、VMware、Hyper-V 等),每款都有自己一套安裝和配置步驟,開發人員如果可以專注開發,減少環境配置的顧慮,可以加速團隊專案的開發效率  

文章圖片

介紹

我要介紹這款 VM 管理工具 Vagrant,第一次接觸它是在大四的時候,教授分派我們使用它完成作業,那時候用的一知半解,直到最近研究一番,把它系統化的整理出來。  

Vagrant 是用 ruby 寫的 Hypervisor 虛擬機管理工具,它的特色是有規範式的配置方法,幫助我們跨虛擬化技術,我們可以學習一套vagrant 便可操作多種不同的VM,對於虛擬機的移植非常方便。

安裝

因為 Vagrant 只是 VM 的管理工具,所以除了安裝 Vagrant 外,還要安裝虛擬機 Provider ,而我的電腦作業系統是 windows ,所以我這邊安裝 vitualbox 。

其實也可以使用 Hyper-V ( VM 性能更好,因為 Hypervisor 屬於 type1,直接使用硬體資源),但據說啟用 Hyper-V 後會對宿主電腦整體性能多少造成影響,所以我就沒考慮了 。

安裝完成後,打開 CLI 輸入 :

bashvagrant --version # show Vagrant 2.4.1 代表成功

配置文件  

其中,我們可以仰賴單一檔案 Vagrantfile 完成虛擬機的配置,甚至可以單一檔案同時管理多台虛擬機,如果熟悉 ruby 的人可以很輕鬆的撰寫該文件,不熟悉也沒關係,只要記得基本語句便可上手

 Vagrantfile 如果要比擬,我會把它比做 docker 的 DockerFile,前者是對虛擬機的描述,後者是對容器的描述。另外,它有 Vagrant Clound 可以下載 vagrant 的 box,我們可以基於這個 box 配置虛擬機細節,也類似 docker 從 Docker Hub 下載鏡像,不過就如我前面所說 Vagrant 是 for 虛擬機的,docker 是 for 容器的,本質上仍有區別。

下一篇文章將會針對配置文件與指令進行說明。