2016-08-31: @DarkForce リクエストごとに Vagrantfile 全体を含めるように回答を更新しました。
これを行うには、各ブロックvm.provider
内で定義を移動します。vm.define
たとえば、次の構成では、メモリーを「web」の場合は 2048MB、「db」の場合は 1024MB に設定します。
# -*- mode: ruby -*-
# vi: set ft=ruby :
Vagrant.configure(2) do |config|
config.vm.box = "ubuntu/trusty64"
config.vm.define :web do |web_config|
web_config.vm.host_name = "web"
web_config.vm.network "private_network", ip:"192.168.100.10"
web_config.vm.provider :virtualbox do |vb|
vb.customize ["modifyvm", :id, "--memory", "2048"]
vb.customize ["modifyvm", :id, "--cpus", "2"]
end
end
config.vm.define :db do |db_config|
db_config.vm.host_name = "db"
db_config.vm.network "private_network", ip:"192.168.100.20"
db_config.vm.provider :virtualbox do |vb|
vb.customize ["modifyvm", :id, "--memory", "1024"]
vb.customize ["modifyvm", :id, "--cpus", "2"]
end
end
end
注: この例 (Vagrant ドキュメントの多くの例と同様) は、VirtualBox でのみ機能します。Vagrantfile を VMware または別のプロバイダーでも動作させたい場合は、カスタマイズ パラメーターを個別にリストします。例えば:
x.vm.provider "vmware_fusion" do |v|
v.vmx["memsize"] = "3000"
end
x.vm.provider :virtualbox do |v|
v.customize ["modifyvm", :id, "--memory", "3000"]
end