我想創建一個通用開發Vagrant環境,我可以從我的系統上的任何地方登錄到vagrant up
。 I know,Vagrant搜索以CWD開頭的Vagrantfile
,然後在每個父目錄中搜索。我也知道設置VAGRANT_CWD
環境變量可以讓你告訴流浪者開始搜索給定的目錄。添加到Vagrant路徑的末尾
所以,我可以這樣做:export VAGRANT_CWD=~/.dotfiles/vdevbox
,其中vdevbox
包含Vagrantfile
和其他相關的東西爲我的開發環境。這使我可以從任何地方到vagrant up
,但它優先於我的CWD中的Vagrantfiles,這使得無法使用其他Vagrant環境(顯然是失敗)。
所以,基本上我需要Bash的PATH=$PATH:~/some/path
的流浪者等值。這是支持的,還是有更好的方法來滿足這種用例?
編輯解決@ arturhoo的回答
以上鍊接的同一幫助頁提到通過~/.vagrant.d/Vagrantfile
合併設置。我認爲,這是一個不同於Vagrant搜索的Vagrantfile的目錄啓動一個env。我認爲它嚴格限制爲合併設置和流浪者必須另外通過上述搜索方法找到Vagrantfile
。我試了一下,結果似乎支持我的假設。
[~/.vagrant.d]$ ls -rc | tail -n 2
Vagrantfile
bootstrap.sh
[~/test]$ ls
[~/test]$ vagrant up
# Error message about missing Vagrantfile
我看到了這一點,並嘗試過它。我認爲這適用於合併設置,但它不同於搜索路徑查找一個Vagrantfile到加載過程。長話短說:它在實踐中不起作用(或者你看到它的工作?)。我會在我的問題中添加一個註釋。 – dfarrell07 2014-09-12 19:54:45