Départ supervisord en tant que root ou pas?

Superviseur est en cours d'exécution sur 3.0:

pip freeze | grep supervisor
supervisor==3.0

Lors du démarrage de supervisord à partir de la ligne de commande:

sudo $VIRTENV/supervisord --nodaemon --configuration $PATH_TO_CONFIG/supervisord.conf

J'obtiens cette erreur:

2013-11-11 23:30:50,205 CRIT Supervisor running as root (no user in config file)

Mais je ne peux pas commencer à supervisord sans sudo, il se plaint:

Error: Cannot open an HTTP server: socket.error reported errno.EACCES (13)

Quelle est la bonne façon de traiter avec elle?

(Je reçois le même message d'erreur si le démarrage en tant que root mais la définition d'utilisateur = foobar en vertu de la [supervisord] section dans supervisord.conf)

Mise à jour: Voici mon supervisord.conf

[unix_http_server]
file = /opt/run/supervisord.sock

[inet_http_server]
port = 9001
username = foobar
password = foobar

[rpcinterface:supervisor]
supervisor.rpcinterface_factory = supervisor.rpcinterface:make_main_rpcinterface

[supervisord]
logfile = /opt/logs/supervisord.log
loglevel = debug
pidfile = /opt/run/supervisord.pid

[supervisorctl]

[program:foo1]
user = foobar
autostart = True
autorestart = True
command = foo1
stdout_logfile = /opt/logs/foo1.stdout.log
stderr_logfile = /opt/logs/foo1.stderr.log
stdout_logfile_maxbytes = 10MB
stderr_logfile_maxbytes = 10MB

[program:foo2]
user = foobar
autostart = true
autorestart = true
command = foo2
priority = 100
stdout_logfile_backups = 0
stderr_logfile_backups = 0
stdout_logfile_maxbytes = 10MB
stderr_logfile_maxbytes = 10MB
stdout_logfile = /opt/logs/foo2.stdout.log
stderr_logfile = /opt/logs/foo2.stderr.log
  • Êtes-vous sûr que vous voulez démarrer une autre copie de la supervisord démon, plutôt que de courir supervisorctl ou quelque chose? Qu'est-ce exactement que vous essayez de faire ici?
  • Je n'essayez pas de démarrer plusieurs copies de supervisord, juste un. Comme je l'ai écrit, je suis confus. Départ supervisord en tant que root me donne un CRIT, mais je ne peux pas le démarrer en tant que non-root.
  • Fonctionne lorsque vous retirez le [inet_http_server] l'article?
  • Je me demandais la même chose. La doc n'est pas claire sur cette question et de voir l'erreur CRITIQUE me fait me demander si elle n'est pas mieux pour exécuter un superviseur avec un superviseur de l'utilisateur créé à cet effet. Qu'avez-vous de faire? Merci.
  • TL;DR set user=root dans supervisord.conf. (Explication)
InformationsquelleAutor kev | 2013-11-11