我想寫一個Vagrantfile多機備份由多個供應商。我特別希望能夠一次性產生多於一臺這樣的機器。基本上,我想要運行的命令: vagrant up vb_vm aws_vm
Vagrantfile多個VM和供應商
我知道--provider標誌,但這將被應用到人丁所有機器,因此並不適用於我的情況。
這是我的(很下調,但仍然有效)Vagrantfile:
Vagrant.configure(2) do |config|
config.vm.define 'vb_vm' do |vb_vm|
vb_vm.vm.box='unbuntu/trusty64' # from hashicorp
vb_vm.vm.provider :virtualbox do |v|
end
end
config.vm.define 'aws_vm' do |aws_vm|
aws_vm.vm.box = "aws/dummy"
aws_vm.vm.box_url = 'https://github.com/mitchellh/vagrant-aws/raw/master/dummy.box'
aws_vm.vm.provider :aws do |a, override|
a.access_key_id = 'something'
a.secret_access_key = 'something'
a.ami='something'
end
end
end
一個vagrant box list
顯示,用於每個定義的框是正確的類型:
aws/dummy (aws, 0)
ubuntu/trusty64 (virtualbox, 20150928.0.0)
但vagrant status
給我(請注意,我有可用的LXC插件,這成爲默認)
當前機器狀態:
aws_vm not created (aws)
vb_vm not created (lxc)
因此,這表明產卵多個提供者的機器確實是可能的,但提供者的選擇是錯誤的。
我知道的招數來設置默認提供的,但這隻能使事情變得更糟(使用VirtualBox的到處都是,根本不使用AWS ...)
我所知道的老計算器問題,以及,但它們與更老版本的流浪者有關。
所以現在的問題是:我該如何確保定義的每個框使用其適當的供應商?
這是我所擔心的。有一點,即使這個盒子是爲正確的提供者定義的,你也需要添加--provider。但有用的技巧與停止/向上,謝謝! – Guillaume