尽管读了这个
我的主机名卡在default
这是我的Vagrantfile:
Vagrant.configure(2) do |config|
config.vm.box = "hashicorp/precise32"
config.vm.hostname = "web"
config.vm.network :private_network, ip: "10.0.0.10"
config.vm.provider :virtualbox do |vb|
vb.name = "vagrant-web"
end
end
但是
$ vagrant status
Current machine states:
default running (virtualbox)
和
$ vagrant ssh web
The machine with the name 'web' was not found configured for
this Vagrant environment.
但是
$ vagrant ssh default
工作正常。
我完成了vagrant halt
和vagrant up
。还有其他建议吗?
答案 0 :(得分:1)
如果您想更改 vagrant 名称(与虚拟框名称相比),您需要执行以下操作
Vagrant.configure(2) do |config|
config.vm.box = "hashicorp/precise32"
config.vm.define "web" do |web|
web.vm.hostname = "web"
web.vm.network :private_network, ip: "10.0.0.10"
web.vm.provider :virtualbox do |vb|
vb.name = "vagrant-web"
end
end
end
这种表示法主要用于multi VM,但如果您真的希望流浪汉名称与默认值不同,也可以用于单个VM。
启动虚拟机时,会说
$ vagrant up
Bringing machine 'web' up with 'virtualbox' provider...
所以,如果你查看状态,你会看到
$ vagrant status
Current machine states:
web running (virtualbox)
要进入机器,只需vagrant ssh
,因为你有一台机器,(确保vagrant ssh web
也可以工作)
注意事项作为一个新的流浪汉机器,它将真正创建一个具有新名称的新机器,你创建的默认机器仍然是如此,如果你已经有东西,它将不会自动复制到新机器中。如果你想保留现有的VM,你可以将默认目录从.vagrant
文件夹重命名为web,它可以在理论上起作用,但我从未尝试过自己