$ supervisorctl reread
error: <class 'socket.error'>, [Errno 111] Connection refused: file: /usr/lib64/python2.6/socket.py line: 567
我正在尝试在我的生产系统上配置主管,但是我遇到了这个错误。管理程序日志文件为空。
当我输入qazxsw poi时,它投诉:
supervisorctl
目前没有任何东西正在侦听9001端口,AFACT:http://localhost:9001 refused connection
什么也没有返回。
你必须先启动supervisord才能使用supervisorctl。就我而言:
lsof | grep TCP
如果您使用自定义路径启动supervisord,如下所示:
sudo supervisord -c /etc/supervisor/supervisord.conf
sudo supervisorctl -c /etc/supervisor/supervisord.conf
然后你也应该使用相同的参数启动supervisorctl,如下所示:
sudo supervisord -c /mypath/supervisord.conf
如果您使用sudo supervisorctl -c /mypath/supervisord.conf
的相对URL启动主管,然后尝试从其他目录运行supervisorctl,则可能会出现此问题。
例如:
-c
解决方案是始终使用绝对路径。例如。:
好:
supervisord -c supervisord.conf
supervisorctl start someapp ## works
cd somedirectory
supervisorctl restart someapp ## http://localhost:9001 refused connection
坏:
supervisord -c /etc/supervisor/supervisord.conf
当使用旧版本的supervisord -c supervisord.conf
文件时,也会发生此问题。较新版本的主管使用不同的配置文件。上述解决方案不起作用。在这种情况下,您只需要使用重新生成配置文件
supervisord.conf
希望它可以帮助某人。
请执行以下操作:
echo_supervisord_conf > /etc/supervisord.conf
发布一切正常为b4 - 1b版本存在问题
sudo service supervisor start
你可能犯了同样的错误我创建了配置文件sudo supervisorctl reload
而我的服务管理器(systemd)正在使用配置文件/etc/supervisord.conf
/etc/supervisor/supervisord.conf
要么
sudo rm /etc/supervisord.conf
如果你想保留它
现在你可以运行sudo mv /etc/supervisord.conf /etc/supervisor/supervisord.conf
了
当你运行sudo supervisorctl
时,它首先搜索位于supervisorctl
的配置文件,如果它不存在,它将搜索包的默认文件/etc/supervisord.conf
这是systemd实际运行的。
Systemd始终使用文件/etc/supervisor/supervisord.conf
,而不管其他文件是否存在。
您可以通过运行/etc/supervisor/supervisord.conf
来检查哪个文件正在使用systemd
sudo systemctl status supervisor
您可以在最后一行看到配置文件硬编码的命令
qazxsw poi和qazxsw poi都使用带有绝对配置文件路径的qazxsw poi,确保两个命令都以相同的配置启动。