Vagrant - переадресация портов на несколько машин - PullRequest
0 голосов
/ 21 апреля 2020

У меня проблема с переадресацией портов в Vagrant. А именно, я создаю несколько виртуальных машин в зависимости от переменной, и мне бы хотелось, чтобы каждая машина имела переадресацию портов по схеме

machine_n config.vm.network :forwarded_port, guest: 22, host: 2200
machine_n+1 config.vm.network :forwarded_port, guest: 22, host: 2201
machine_n+2 config.vm.network :forwarded_port, guest: 22, host: 2202
...

Я пытался сделать это таким образом

for i in 2000..2010
    config.vm.network :forwarded_port, guest: 22, host: i
end

(1..MACHINE).each do |i|
config.vbguest.auto_update = false
config.vm.define "machine#{i}" do |node|
node.vm.box = BOX_IMAGE
        end
    end
end

Но, к сожалению, тогда я получил все порты для первой машины Vagrant

machine1: Preparing network interfaces based on configuration...   
machine1: Adapter 1: nat                                           
machine1: Adapter 2: bridged                                       
machine1: Forwarding ports...                                      
machine1: 22 (guest) => 2000 (host) (adapter 1)                    
machine1: 22 (guest) => 2001 (host) (adapter 1)                    
machine1: 22 (guest) => 2002 (host) (adapter 1)                    
machine1: 22 (guest) => 2003 (host) (adapter 1)                    
machine1: 22 (guest) => 2004 (host) (adapter 1)                    
machine1: 22 (guest) => 2005 (host) (adapter 1)                    
machine1: 22 (guest) => 2006 (host) (adapter 1)                    
machine1: 22 (guest) => 2007 (host) (adapter 1)                    
machine1: 22 (guest) => 2008 (host) (adapter 1)                    
machine1: 22 (guest) => 2009 (host) (adapter 1)                    
machine1: 22 (guest) => 2010 (host) (adapter 1)                    
machine1: 22 (guest) => 2200 (host) (adapter 1)  
...