1

Vagrantfile のプロバイダー ブロックにネットワーク オプションを配置しても機能しない理由を理解しようとしています。たとえば、これはうまくいくようです:

config.vm.define "mymachine" do |vbox_config|
  vbox_config.vm.network :private_network, ip: "10.10.10.10"

  vbox_config.vm.provider :virtualbox do |vb|
    vb.ssh.forward_agent = true
  end
end

しかし、これは機能しません (ネットワークにアクセスできません):

config.vm.define "mymachine" do |vbox_config|

  vbox_config.vm.provider :virtualbox do |vb|
    vb.ssh.forward_agent = true
    vb.vm.network :private_network, ip: "10.10.10.10"
  end
end

プロバイダーに固有のネットワーク オプションを設定し、後者のように Vagrantfile を構成したいようです。それが機能しない理由はありますか?

4

1 に答える 1

3

プロバイダー ブロック内にプロバイダー固有ではない構成を設定する場合は、別の構文を使用する必要があります。

config.vm.define "mymachine" do |vbox_config|

  vbox_config.vm.provider :virtualbox do |vb, override|
    override.ssh.forward_agent = true
    override.vm.network :private_network, ip: "10.10.10.10"
  end
end

実際、最初の引数はプロバイダー固有の構成 (例: vb.customize) 用で、2 番目の引数はオーバーライド用です。詳細については、ドキュメントを参照してください。

于 2014-03-12T23:21:41.847 に答える