समावेशी रेंज करने के लिए ऊपर दिए गए 'उदाहरण' सही हैं। यदि आप विशिष्ट बंदरगाहों के एक सेट को अग्रेषित करना चाहते हैं, तो आपको रूबी .each ऑपरेटर का उपयोग करना होगा।
चर मुख्य Vagrant.configure लूप के अंदर या बाहर जा सकते हैं।
UDP_PORTS_LIST={
"5000" => 5000, # Some service
}
TCP_PORTS_LIST={
"5900" => 5900, # VNC
}
जिन वीएम के लिए आप उन्हें मैप करना चाहते हैं, उनके लिए Vagrant.configure ब्लॉक के अंदर जाने के लिए छोरों की जरूरत है (याद रखें कि आपके पास एक ही Vagrantfile में कई VMs हो सकते हैं)।
UDP_PORTS_LIST.each do |guest, host|
config.vm.network "forwarded_port", guest: "#{guest}", host: "#{host}", protocol: "udp"
end
TCP_PORTS_LIST.each do |guest, host|
config.vm.network "forwarded_port", guest: "#{guest}", host: "#{host}", protocol: "tcp"
end