unix:///var/run/supervisor.sock no such file
Solution 1
Alright, after messing around some more I found what I did wrong.
Turns out the lines for supervisorctl
below, only tell supervisorctl
where it can find the socket file.
[supervisorctl]
serverurl=unix:///var/run/supervisor.sock
Further above in the file there are two other lines which define where the file is actually created:
[unix_http_server]
file=/tmp/supervisor.sock
As you can see that created the socket file in /tmp/
while supervisorctl
tried to read it from /var/run/
. I changed the last line to file=/var/run/supervisor.sock
and now it works beatifully.
I hope this answer might help someone else dealing with the same trouble.
Also, you can check out the link provided by @MariusMatutiae in the comments: https://stackoverflow.com/questions/10716159/nginx-and-supervisor-setup-in-ubuntu
Solution 2
For users who have the same entry for both
[supervisorctl]
serverurl=unix:///tmp/supervisor.sock
&
[unix_http_server]
file=/tmp/supervisor.sock
follow below steps to fix the problem -
- Delete .sock file from /tmp
- Run 'supervisord' command. This will recreate the sock file.
- Run 'supervisorctl -i' to check the status of the services.
Hope this helps you!
Solution 3
After too much struggling with this issue, with everybody telling me to just enable
or restart
which was not working. I finally found out the solution for me:
- First of all acknowledge that you have the main supervisor.conf file here:
/etc/supervisor/supervisor.conf
- If you are in my case, you also have a project specific
.conf
file in here:/etc/supervisor/conf.d/project.conf
Somehow supervisorctl
was working fine but the weird thing is that doing service supervisor restart
breaks everything and you get the error of OP.
The solution then is to:
- Rename
project.conf
toproject.conf.tmp
- Then
service supervisor restart
(after whatsupervisorctl
works again) - You rename back your project conf file to
project.conf
-
supervisorctl reread
,supervisorctl update
,supervisorctl restart all
Related videos on Youtube
kramer65
Updated on September 18, 2022Comments
-
kramer65 over 1 year
I'm running Supervisord on my Ubuntu 14.04 server and everything works fine. I deploy using a git push and upon deployment I also need to restart my application server (gunicorn) which I can supposedly do using
supervisorctl
.un my
supervisord.conf
, gunicorn is defined as follows:[program:gunicorn] command=/home/imb/imb/venv/bin/gunicorn --worker-class eventlet -b 127.0.0.1:5000 -w 1 app:app directory=/home/imb/imb autostart=true autorestart=true stdout_logfile=/tmp/gunicorn.log redirect_stderr=true stopsignal=QUIT
and I enabled
supervisorctl
like this:[supervisorctl] serverurl=unix:///var/run/supervisor.sock ; use a unix:// URL for a unix socket
I started supervisor using
sudo supervisord -c /home/imb/imb/supervisord.conf
As far as I understand I now should be able to restart gunicorn using the command
supervisorctl restart gunicorn
, but when I do that I get$ supervisorctl restart gunicorn unix:///var/run/supervisor.sock no such file
I checked and the file
/var/run/supervisor.sock
indeed doesn't exist, even though I'm sure supervisor is in fact running:$ ps -A | grep supervisor 27211 ? 00:00:00 supervisord
Does anybody know why the
/var/run/supervisor.sock
file isn't created, even though supervisor is clearly running? All tips are welcome!-
MariusMatutiae about 8 yearsHave you seen this post? stackoverflow.com/questions/10716159/… Have you tried any of its oslutions? Do they work? If they do not, how do they fail?
-
-
MariusMatutiae about 8 yearsI see that the page I suggested did contain the right solution for you, stackoverflow.com/a/28469044/2796243 . I am glad to see I could help, cheers.
-
kramer65 about 8 years@MariusMatutiae - Yes indeed, I might not have given you the recognition which you deserved. So a big thanks to you! Note that I'm still happy to give you the 50 bounty points. Just write an answer and I'll reward it to you.. :-)
-
MariusMatutiae about 8 yearsThanks, very nice of you, but I did not really find the solution. It's just that the page above contains several different solutions, only one of which (happily) applies to you, but it can be helpful to others reading this post to know that other solutions may be available, should the need arise. That's all. Cheers.
-
StalkAlex over 7 yearsI faced another "funny" problem. Don't use tmp folder for socket file as it's cleaned automatically and socket file will be erased till next supervisord restart.