我想将 RAM 增加到至少 1 GB,并且我想配置“仅主机”网络以使用“199.188.44.20”。
这是我的
Vagrantfile
:
# -*- mode: ruby -*-
# vi: set ft=ruby :
Vagrant::Config.run do |config|
config.vm.customize ["modifyvm", :id, "--memory", 1024]
config.vm.network :hostonly, "199.188.44.20"
config.vm.define :web do |web_config|
web_config.vm.box = "lucid32"
web_config.vm.forward_port 80, 8080
web_config.vm.provision :puppet do |puppet|
puppet.manifests_path = "manifests"
puppet.manifest_file = "lucid32.pp"
end
end
config.vm.define :web2 do |web2_config|
web2_config.vm.box = "lucid32"
web2_config.vm.forward_port 80, 8081
web2_config.vm.provision :puppet do |puppet|
puppet.manifests_path = "manifests"
puppet.manifest_file = "myweb.pp"
end
end
end
但是,当我跑步时
vagrant up
我得到:
虚拟机在尝试启动时无法保持“正在运行”状态。这通常是由于配置错误或主机系统不兼容造成的。请打开 VirtualBox GUI 并尝试手动启动虚拟机以获得更多信息性错误消息
而且,当我尝试登录虚拟机时遇到
connection refuse
错误。
要在使用 Vagrant 2 时增加内存或 CPU 数量,请将其添加到您的 Vagrantfile 中
Vagrant.configure("2") do |config|
# usual vagrant config here
config.vm.provider "virtualbox" do |v|
v.memory = 1024
v.cpus = 2
end
end
自从
Vagrant 1.1
customize
选项变得特定于 VirtualBox。
现代的做法是:
config.vm.provider :virtualbox do |vb|
vb.customize ["modifyvm", :id, "--memory", "256"]
end
您可以通过添加以下配置来修改各种虚拟机属性(请参阅 Vagrant 文档以获取更多信息):
# Configure VM Ram usage
config.vm.customize [
"modifyvm", :id,
"--name", "Test_Environment",
"--memory", "1024"
]
您可以从 VirtualBox 命令行选项文档中获取要更改的属性:
vagrant 文档 有关于如何更改 IP 地址的部分:
Vagrant::Config.run do |config|
config.vm.network :hostonly, "192.168.50.4"
end
你也可以像这样重构配置,结束是用end做的,而不是嵌套它。 这个比较简单。
config.vm.define :web do |web_config|
web_config.vm.box = "lucid32"
web_config.vm.forward_port 80, 8080
end
web_config.vm.provision :puppet do |puppet|
puppet.manifests_path = "manifests"
puppet.manifest_file = "lucid32.pp"
end
我无法得到任何这些答案。这是我最终放在 Vagrantfile 的最顶部、
Vagrant::Config.run do
块之前的内容:
Vagrant.configure("2") do |config|
config.vm.provider "virtualbox" do |vb|
vb.customize ["modifyvm", :id, "--memory", "1024"]
end
end
我注意到快捷方式访问器样式“vb.memory = 1024”似乎不起作用。
您可以通过修改 vagrant 文件中 config.vm.provider 部分的内存属性来轻松增加虚拟机的 RAM。
config.vm.provider "virtualbox" do |vb|
vb.memory = "4096"
end
这将为您的虚拟机分配大约 4GB 的 RAM。您可以根据您的要求更改此设置。例如,以下设置将为您的 VM 分配 2GB RAM。
config.vm.provider "virtualbox" do |vb|
vb.memory = "2048"
end
尝试删除文件中的
config.vm.customize ["modifyvm", :id, "--memory", 1024]
,然后添加上述代码。
对于网络配置,请尝试将文件中的
config.vm.network :hostonly, "199.188.44.20"
修改为config.vm.network "private_network", ip: "199.188.44.20"
在 Linux 上,默认提供程序可能不是 Virtualbox。在这种情况下,您需要 libvirt 的不同配置(可以通过任务列表中的 qemu-something 进程而不是 VirtualBox 来识别)。
这是更多内核和 RAM 的简短示例:
Vagrant.configure("2") do |config|
# [...]
config.vm.provider :libvirt do |libvirt|
libvirt.cpus = 7
libvirt.memory = 4069
end
end
有关更多选项,请参阅文档。
使用
vagrant reload
应用并重新启动虚拟机。