2016-01-06 1 views
4

Можно открыть порты, сетевые файлы, и есть плагины, которые позволяют запускать гостевые или хост-команды [shell] во время процесса Provendinging Vagrant.Vagrant: Как вы можете запускать скрипты на хосте через команды в гостевой оболочке?

То, что я хотел бы сделать, это иметь возможность (возможно, через псевдоним bash) запустить команду в гостевой гостевой системе Vagrant/VM и выполнить команду на хосте, в идеале, с передаваемой переменной командная строка.

Пример: На моем хосте я запускаю редактор Atom (то же самое относится и к TextMate, что угодно). Если я хочу работать с общим файлом в виртуальной машине, я должен вручную открыть этот файл поверх хоста, либо открыв его непосредственно в редакторе, либо выполнив команду оболочки «atom filename».

Я хочу четность, поэтому, находясь внутри виртуальной машины, я могу запустить 'atom filename', и это передаст имя файла сценарию 'atom $ 1' за пределами VM, редактор (Atom).

Примечание: Мы используем Соль для Бродячего Обеспечения и NFS для монтажа, для чего это стоит. И, конечно, ssh с ключом.

Бонусный вопрос: Выполнение этой работы с .gitconfig в качестве редактора конфликтов слияния (должно работать, если первое возможно, правильно?).

ответ

1

Это очень интересный прецедент, о котором я не слышал раньше. В Vagrant нет собственного метода обработки, но эта функциональность была добавлена ​​в Packer в виде local shell provisioner. Вы можете открыть проблему GitHub на Vagrant project и предложить ту же функцию. Однако дважды проверьте текущий список проблем, потому что возможно, кто-то избил вас.

В то же время, однако, у вас есть обходной путь, если вы решили сделать это ...

  1. Создание пары ключей SSH на хосте.
  2. Используйте соль, чтобы добавить закрытый ключ в /home/vagrant/.ssh на поле.
  3. Используйте средство обеспечения оболочки для запуска удаленных команд ssh на хосте от гостя.

Эти команды будут принимать форму ...

ssh [email protected] "ls -l ~" 

В моем опыте, 192.168.0.1 IP всегда указывает обратно на хост, но ваш пробег может варьироваться. Я не специалист по сетям.

Я надеюсь, что это сработает для вас, и я думаю, что локальная оболочка для Vagrant будет разумной функцией.

 Смежные вопросы

  • Нет связанных вопросов^_^