Изменить перенаправление портов Vagrant в работающей системе - PullRequest
27 голосов
/ 27 сентября 2011

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

С этой страницы :

Переадресованные порты применяются во время vagrant up, как и любой другой конфигурации. Но если у вас уже есть работающая система, звоните vagrant reload будет применять их без повторного импорта и восстановления все.

Обратите внимание, что для переадресации портов требуется перезагрузка виртуальной машины, поскольку VirtualBox не получит переадресованные порты, пока не станет полностью перезапущен.

Звучит так, как я хочу! Но если я попробую vagrant reload, то все мои рецепты шеф-повара будут перезагружены, и, поскольку полный процесс занимает около получаса, я должен пойти на кухню и взять n-ую чашку кофе.

Есть ли способ применить изменения Vagrantfile к работающей системе, не проходя весь процесс подготовки? Я не могу пить так много кофе.

Ответы [ 2 ]

41 голосов
/ 02 октября 2011

Вы пытались использовать пользовательский интерфейс VirtualBox для добавления нового правила переадресации портов вручную? Откройте VirtualBox и выберите работающую виртуальную машину, затем нажмите Настройки-> Сеть-> Переадресация порта и добавьте новое правило, например, для пересылки 127.0.0.1:2223 в 10.0.2.15:22. После этого я смог подключиться к своей виртуальной машине через порты 2222 (как обычно) и 2223 (новое правило).

Естественно, вы одновременно добавили бы это новое правило в Vagrantfile, чтобы гарантировать, что отображение станет постоянным после возможного перезапуска.

Кроме того, если подготовка вашей виртуальной машины занимает слишком много времени, рассматривали ли вы вопрос о переносе некоторых шагов «шеф-повар / кукольный» в реальную базовую коробку? Например, возможно, вы устанавливаете кучу серверного программного обеспечения, установка которого занимает некоторое время. Переупаковка коробки с уже установленным программным обеспечением может значительно сократить время запуска Vagrant.

Надеюсь, это поможет!

16 голосов
/ 05 ноября 2012

вы можете сделать

vagrant reload --no-provision

, и он должен работать без повара, марионетки и т. Д.

хотя ивсе равно перезагрузит vm - ощущение, что «Но если у вас уже работает система ...», возможно, это немного вводит в заблуждение.

...