3

我正在创建两个带有 Vagrantfile 的 CentOS 盒子,并在它们各自的块中为它们使用两个唯一的主机名

box1_config.vm.host_name = "Base1"
box1_config.vm.network:hostonly, "192.168.50.4"

box2_config.vm.host_name = "Base2"
box2_config.vm.network:hostonly, "192.168.50.5"

操作系统启动时没有任何问题,但我不知道使用什么主机名来访问它们。

我尝试将以下作为“vagrant ssh”的参数,但没有一个有效,我收到错误:“此命令需要特定的 VM 名称才能在多 VM 环境中定位”

试过:

  • 主机名
  • IP地址
  • VirtualBox 中的虚拟机名称

任何线索我可能会出错?

4

1 回答 1

9

vagrant ssh 的参数是附加到 vm 定义块的符号。例如(来自 vagrant 文档):

Vagrant::Config.run do |config|
  config.vm.define :web do |web_config|
    web_config.vm.box = "web"
    web_config.vm.forward_port 80, 8080
  end

  config.vm.define :db do |db_config|
    db_config.vm.box = "db"
    db_config.vm.forward_port 3306, 3306
  end
end

你会做的

vagrant ssh web

或者

vagrant ssh db

因为这些是配置中定义的框的名称。

HTH。

于 2012-09-17T12:56:50.097 回答