У supervisord есть одна проблема - его веб-интерфейс не очень хорошо работает, если его поместить в поддиректорию url. Т.е. вот так будет работать хорошо:
upstream supervisor { server 127.0.0.1:9001 fail_timeout=0; } location / { proxy_pass http://supervisor; }
А вот так уже нет
location /admin/ { proxy_pass http://supervisor; }
На github нашёл полухак
location /admin/ { proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $http_host/admin/index.html; proxy_redirect off; rewrite ^/admin(.*)$ $1 break; proxy_pass http://supervisor; }
Но у него есть одна проблема - он не работал на ссылках /admin/logtail/procname. Полностью пофиксить работу не получилось, поэтому сделал редирект на необновляемый хвост лога:
location /admin/logtail/ { rewrite ^/admin/logtail/(.*)$ /admin/tail.html?processname=$1 permanent; }