可以打开端口,网络文件,并且有插件可以在Vagrant的配置过程中运行guest虚拟机或主机[shell]命令。
我想做的是能够(可能通过bash别名)在Vagrant guest虚拟机/ VM中运行命令,并在主机上执行命令,理想情况下在命令上传递变量线。
示例:在我的主机中,我运行Atom编辑器(同样适用于TextMate,无论如何)。如果我想处理VM中的共享文件,我必须在主机中手动打开该文件,方法是直接在编辑器中打开它,或者运行'atom filename'shell命令。
我想要奇偶校验,所以在VM内部,我可以运行'atom filename',这会将文件名传递给VM外部的'atom $ 1'脚本,在主机中,并在我的主机编辑器中打开它(原子)。
注意:我们使用Salt进行流氓配置,使用NFS进行安装,以获得它的价值。当然,还是带有密钥的ssh。
奖金问题:使用.gitconfig作为其合并冲突编辑器(如果前者可行,应该正常工作,对吗?)。
答案 0 :(得分:2)
这是一个我以前从未听过的非常有趣的用例。在Vagrant中没有处理此功能的本机方法,但此功能以local shell provisioner的形式添加到Packer中。您可以在Vagrant project上打开GitHub问题并提出相同的功能。不过,请仔细检查当前的问题列表,因为有人可能会打败你。
与此同时,如果你决定这样做,你确实有一个解决方法......
/home/vagrant/.ssh
添加私钥。这些命令将采用......
的形式ssh username@192.168.0.1 "ls -l ~"
根据我的经验,192.168.0.1
IP始终指向主持人,但您的里程可能会有所不同。我无论如何都不是网络专家。
我希望这对你有用,我认为Vagrant的本地shell配置程序是一个合理的功能。