Vagrant,VirtualBox,Supervisord:何时安装同步文件夹?

Tre*_*vor 3 virtualbox puppet supervisord vagrant

我正在使用Supervisord运行虚拟机来启动和维护几个重要的后台进程.我使用vagrant和virtualbox创建虚拟机,并使用puppet进行配置.当机器启动时,supervisord会抓取/etc/supervisor/conf.d中的所有.conf文件并尝试运行它们.不幸的是,当我跑

Vagrant up
Run Code Online (Sandbox Code Playgroud)

在共享同步文件夹之前,supervisord立即开始尝试在conf.d中运行文件.因此,启动一些像Xvfb这样的后台进程运行得很好,但启动我的统计跟踪器(位于同步文件夹中)是不可能的.事实上,我在supervisord日志中看到多次尝试启动该进程,抱怨它无法找到该文件,最后放弃了.然后,一旦机器完全运行,我可以SSH并在.conf文件中运行完全相同的命令并自己启动该过程.

我创建了一个中间脚本来连续循环,等待同步文件夹变为可用,然后启动我想要的进程.但在这种情况下,主管没有办法确保流程继续运行,而且感觉就像是黑客攻击.

有更清洁的方法吗?也许来自傀儡或流浪汉?

Tre*_*vor 6

经过一些谷歌搜索,我发现这解决了我的问题:http://razius.com/articles/launching-services-after-vagrant-mount/