我正在尝试从命令行SSH到特定的vagrant框:
vagrant ssh winbox password
'winbox'就是这个框似乎在'vagrant box list'中调用的。但是,在输入该命令后,我得到:
The machine with the name 'winbox' was not found configured for
this Vagrant environment.
如果我只是做'流浪汉ssh'一切正常,所以我很确定我的盒子名称错了。该框的vagrant文件中显示相同的框名称:
Vagrant.configure("2") do |config|
config.vm.box = "winbox"
config.ssh.username = "vagrant"
config.ssh.password = ******
config.vm.network :forwarded_port, guest: 4444, host: 4440
config.vm.network :forwarded_port, guest: 5555, host: 5555
end
有没有办法检查当前正在运行的流浪者盒子的名字?
重要的是我在一行中登录这个框,因为我基本上使用Java来执行JUNIT测试中的命令行代码,并且不可能首先使用vagish ssh然后输入密码。< / p>
答案 0 :(得分:0)
启动新VM时,您只需要方框名称信息。
因此,当您运行vagrant init winbox
或更改Vagrantfile中的config.vm.box
参数时。
初始化虚拟机(vagrant up
)后,您可以忘记该框,您不再需要它(它仍然需要存在于您的Vagrant文件中,但您不能参考它了
如果您在Vagrantfile中运行单个VM,则只需运行vagrant ssh
即可进入VM。
vagrant ssh <VMName>
感到困惑的是你运行vagrant multi-machine时所以在这种情况下,单个Vagrantfile会旋转多个虚拟机,你需要指出虚拟机的名称(不是盒子) )ssh到正确的VM