2012-05-04 54 views
4

我正在尋找將開發環境分發給我的團隊並發現Vagrant的最佳方式。 一些閱讀和測試後,這裏是我能說什麼關於它爲什麼使用Vagrant而不是共享虛擬機磁盤本身更好?

臨: 自動地創建一個新的VirtualBox虛擬機(新用戶)的過程。

騙局: 通過要求新用戶學習新工具,取消了我發現的唯一專業版。

學習曲線比實際複製VDI和配置新的VirtualBox VM使用它花費更多的時間。 (這不是很好,但仍然比學習一個新工具更高)。

我絕對不明白爲什麼使用Vagrant使分發開發環境的過程與創建普通的VirtualBox不同虛擬機和共享磁盤。

也許我在這裏錯過了一個觀點,任何人都能照亮我嗎?

+2

如果部署虛擬機是您的團隊經常做的事情,那麼自動化的主要好處是降低「人爲錯誤」的風險。恕我直言... – paulsm4

回答

7

我只能從我自己的經驗中說出:學習曲線非常值得。

作爲一名程序員,我喜歡能夠爲開發,測試和部署設置單獨的獨立環境。

當然,你可以複製VDI到任何地方,但是在我看來,執行一些命令行程序更容易,而且它已經準備好了。對我來說,複製VDI或其他類型的圖像似乎很骯髒。

此外,我可以打包流浪箱,我可以發送給我的同事或在互聯網上發佈。

+0

我同意你凱文,當你說它看起來很髒,複製VDI到處都是,但我不能將此分類爲使用流浪者的好處。我發現的另一個缺點是,您無法更改配置的內存量。如果我的團隊中的其中一位開發人員正在使用1GB內存的蹩腳電腦,並且他收到一個1GB的Vagrant盒以使用......他無法使用它。當然,您可以編輯我認爲的VagrantFile,然後再次更改......您可以在Virtualbox中執行此操作,而無需學習其他工具。 –

+1

它最終適用於你和你的團隊所做的最好的事情。我曾說過複製圖像是我不喜歡的,但這只是我的看法。如果在你的作品中複製圖片,這就是你的團隊中每個人都知道的最好的作品,那麼我鼓勵你繼續保持這一點。 – kevin628

+0

你的Vagrantfile可以包含任意位的ruby代碼,所以如果你想讀取一個配置文件,並且這個配置文件的RAM分配設置很簡單,並且如果你想在命令行詢問用戶這些信息並寫入配置文件,這也很容易。 – mc0e

1

我們在辦公室討論同樣的問題......現在,順便說一句!

當我第一次在與流浪者取得了聯繫,我是持懷疑態度,但優勢,我可以看到,超越個人的意見是:

  1. 你可以從一個常見的配置開始,使自動化許多「叉」,而不一個快照鏈接(當需要刪除一個或兩個快照時,這是一個很大的麻煩,我可能會說);
  2. 克隆(包裝)機器的過程比出口設備快得多;
  3. 使用vagrant設置一臺機器仍然可以使用VBox iface,因此根據Vagrant的功能制定一個起點並讓隊友決定是否使用它也沒有問題;
  4. 如上所述,自動化。

我們仍在做一些測試...現在談論具體的意見,我主要的一點是複製和事實,即打包和拆包是快於出口。

2

我認爲Vagrant的主要優勢在於它讓您擁有一個基本包,可以根據不同目的(包括開發,測試,管理,操作等)重新配置,只需更改清單/食譜。分享和啓動只是更方便。

較少,但仍然不錯,它可以讓你毫不費力地重新開始。我知道你可以在VirtualBox中使用快照,但有時候,在它們之間來回移動會變得很煩人。通過Vagrant,你可以啓動一個盒子,測試一些東西,摧毀它。比你可以重新開始,在同一個盒子裏,測試一些東西。您可以輕鬆地啓動兩次相同的虛擬機,並在每個測試中稍有不同,並將其銷燬。

這裏也檢查出了答案:https://superuser.com/questions/584100/why-should-i-use-vagrant-instead-of-just-virtualbox 編輯:在我的第一個答案,我想帕克,而不是流浪,我的錯誤的。

5

有很多更多的優勢遠遠不止這些,以無業遊民:

  • 100%可重複的環境中,到處都一樣。
  • 可以存儲在源代碼控制(git/svn/...)和版本。
  • 保存磁盤空間。這對於筆記本電腦來說可能很重要,我現在在我的系統上有92個Vagrant文​​件,並非全部都創建了。想象一下,他們全部都是20gb的虛擬現實...
  • 實驗變得微不足道。一個快速流浪的初學者精確64,流浪起來,嘗試一些東西,流浪摧毀,流浪起來,重試一些東西,流浪摧毀 - 並完成。

它需要一些紀律,不需要手動安裝所需的軟件包或更新常用的Vagrantfile,但是一旦你有一個工作流程解決了,它就非常出色。我發現

相關問題