2015-04-28 2 views
0

В моем Vagrantfile я пытаюсь настроить память виртуальной виртуальной машины с помощью следующего фрагмента кода. Я использую следующий ящик для VM - http://cloud-images.ubuntu.com/vagrant/trusty/current/trusty-server-cloudimg-amd64-vagrant-disk1.boxВажная настройка памяти не работает

Vagrant.configure("1") do |config| 
    config.vm.customize ["modifyvm", :id, "--memory", 1024] 
end 

Vagrant.configure("2") do |config| 
    config.vm.provider "virtualbox" do |v| 
     v.name = "FJORD_VM" 
     v.memory = 1024 
    end 
end 

Но это не работает, и VM начинается с 512 Мб оперативной памяти по умолчанию в. Что может быть здесь? Я использую последнего 1.7.2 бродяг. Я также попытался с помощью

v.customize ["modifyvm", :id, "--memory", 1024] 

в Vagrant.configure("2") блоке и до сих пор не работает.

Я также перехватил вызовы VBoxManage, создав свой локальный сценарий оболочки, который регистрирует аргументы перед вызовом фактического VBoxManage. Я не вижу вызовов для настройки памяти VM.

+0

Вы должны удалить первый блок, как что [говорил Vagrant, что ваш Vagrantfile является 1.0x Vagrantfile] (http://docs.vagrantup.com/v2/vagrantfile/version.html). Наличие в одном и том же Vagrantfile может вызвать некоторые проблемы. – ydaetskcoR

+0

Такая же проблема здесь. Могли ли вы это решить? – Marcelo

ответ

0

Я второй, что @ydaetskcoR говорит об удалении раздела 1.0 - не только это может смутить бродягу, но оно кажется излишним. Я использую тот же ящик, что и вы, и это работает прекрасно для меня:

config.vm.provider "virtualbox" do |v| 
    v.memory = 1024 
    v.cpus = 2 
    v.customize [ :guestproperty, :set, :id, "/VirtualBox/GuestAdd/VBoxService/--timesync-set-threshold", 10000 ] 
end 

Я также использую Vagrant 1.7.2 и Virtualbox 4.3.16, и как я уже сказал, это работает хорошо для меня.

+0

Но как мне поддерживать совместимость для более старой версии конфигурации? – Guruprasad

+0

У вас действительно есть люди с версией 1.0.x бродяг? Я сомневаюсь, стоит ли это, но если это действительно источник вашей проблемы, и вам нужно * поддерживать поддержку (в отличие от использования require_version), тогда вы можете поместить некоторый Ruby в свой файл конфигурации, например 'if Vagrant :: VERSION [0,3] == "1.0" 'для обертывания вашего старого блока. –

0

Как вы можете использовать Vagrant 1.7.2 вам просто нужно Vagrant.configure("2") как here

Таким образом, вы можете использовать:

Vagrant.configure("2") do |config| 
    config.vm.provider :virtualbox do |v| 
     v.customize ["modifyvm", :id, "--memory", "1024"] 
     v.customize ["modifyvm", :id, "--name", "FJORD_VM"] 
    end 
end 
+0

Но как я могу поддерживать совместимость для более старой версии конфигурации? – Guruprasad

+0

Vagrant alredy поддерживает совместимость со старой версией – acfreitas

Смежные вопросы