Наведені вище приклади "для" є правильними для виконання інклюзивного діапазону. Якщо ви хочете переслати набір певних портів, вам потрібно скористатися оператором Ruby .each.
Змінні можуть переходити всередину або зовні основного контуру конфігурації Vagrant.configure.
UDP_PORTS_LIST={
"5000" => 5000, # Some service
}
TCP_PORTS_LIST={
"5900" => 5900, # VNC
}
Цикли повинні пройти всередині блоку Vagrant.configure для VM, для якого потрібно їх відобразити (пам’ятайте, що в одному Vagrantfile можна мати кілька віртуальних машин).
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