supervisorctl 3.3.1 http://localhost:9001 refused connection

Solution 1:

Apparently there are required fields for the configuration file for version 3.0 and upwards http://supervisord.org/configuration.html

[inet_http_server] is required:

A TCP host:port value or (e.g. 127.0.0.1:9001) on which supervisor will listen for HTTP/XML-RPC requests. supervisorctl will use XML-RPC to communicate with supervisord over this port. To listen on all interfaces in the machine, use :9001 or *:9001.

Default: No default.

Required: Yes.

Introduced: 3.0

Also [rpcinterface:supervisor] is required as it complains.

So my configuration must look like so:

[supervisord]
nodaemon=true

[supervisorctl]

[inet_http_server]
port = 127.0.0.1:9001

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

Now it connects.

Solution 2:

Be sure to check the following if you get the http://localhost:9001 refused connection error.

  1. Make sure supervisord is running
  2. Have these enabled (uncommented) in supervisord.conf file:
    a)

    [inet_http_server]         
    port=127.0.0.1:9001
    

    b)

    [supervisorctl]
    serverurl=http://127.0.0.1:9001
    

    c)

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

Note: The host and port of the inet server and the one which supervisorctl is trying to connect to should be the same.