How can I run supervisord without using root?

Solution 1:

Try commenting out this param. If you don't specify a user, it should run with the same user id that started the process.

user=jason ; default user

Solution 2:

I'm very new to supervisor myself but I'm also trying to get it working with celeryd. For now I'm happy for supervisord to be running as root as it's being run with an init.d script, mind.

Anyway have a look at the log and error log files for supervisord. What's in there? On Ubuntu 10.10 they're in /var/log/supervisor/supervisord.log. You can peer at using the command 'maintail' in supervisorctl.

Solution 3:

Perhaps somewhat unrelated but make sure you don't make the same mistake as I did. I had a bunch of directories and files (log files) that I was trying to use as non-root that had accidentally already been owned by root thus making it impossible to continue supervisord as non-root. Blogged about it here