我已经从 ubuntu 10.04(64 位)的系统包中安装了 supervisord 3.0a8。主管服务似乎正在运行,但并未启动配置的程序。有趣的是,这个确切的配置正在另一个系统上运行,并且按预期工作。
主配置文件如下所示:
; /etc/supervisor/supervisord.conf
[unix_http_server]
chmod=0700
file=/var/run/supervisor.sock
[supervisord]
logfile=/var/log/supervisor/supervisord.log
childlogdir=/var/log/supervisor
pidfile=/var/run/supervisord.pid
[rpcinterface:supervisor]
supervisor.rpcinterface_factory = supervisor.rpcinterface:make_main_rpcinterface
[supervisorctl]
serverurl=unix:///var/run/supervisor.sock
[include]
files = /etc/supervisor/conf.d/*.conf
Run Code Online (Sandbox Code Playgroud)
示例程序配置如下所示:
; /etc/supervisor/conf.d/sample.conf
[program:sample]
directory=/opt/sample
command=/opt/sample/run.sh
Run Code Online (Sandbox Code Playgroud)
其中,/opt/sample/run.sh是:
#!/bin/bash
while true; do
T=`date`
echo "[$T] Running!" >> /var/log/sample.log
sleep 1
done
Run Code Online (Sandbox Code Playgroud)
而且,这里有一些关于正在运行的 supervisord 实例的附加信息:
root@myhost:~# supervisorctl version
3.0a8
root@myhost:~# which supervisorctl
/usr/bin/supervisorctl
root@myhost:~# which supervisord
/usr/bin/supervisord
root@myhost:~# supervisorctl status # NOTE that there's no output!
root@myhost:~# supervisorctl avail
root@myhost:~# service supervisor status
is …Run Code Online (Sandbox Code Playgroud)