我已经看到了将build supervisor构建到buildout中的buildout配方,我想要控制里面的守护进程。但是,在我看来,在/etc/init.d(例如)中仍然需要在启动时运行所述管理程序实例。
那么,为什么要在buildout中构建主管?为什么不在系统范围内安装它,只为内部涉及的守护进程创建一个配置文件?
答案 0 :(得分:9)
当我们为客户创建构建时,我们希望该构建在具有最小依赖性的任意托管环境上运行,所有这些都可以满足系统包。通过在构建中包含supervisord,我们无需在系统范围内安装它,并且可以精确地调整它的参数,而无需要求系统管理员为我们更改设置。
使用usercrontab配方很容易让主管在启动时从buildout运行:
[supervisor-cron]
recipe = z3c.recipe.usercrontab
times = @reboot
command = ${buildout:bin-directory}/supervisord -c ${buildout:directory}/etc/supervisord.conf
上面的部分将在crontab中添加一个条目,导致supervisor在引导时运行。