UI stops listening then connection refused errors

I’m trying to install 3.0.1 on Ubuntu 20.04. When I first installed it, specifying port 8080, I could access the UI, I was able to login. After configuring nginx, when I use port 80, which rewrites to 443, I get 502 Bad Gateway. 8080 is no longer listening (which I can confirm with netstat -t -l).
libretime.error.log has connect() failed (111: Connection refused) while connecting to upstream,
playout.log is loaded with a variety of connection errors.
Neither restarting the libretime.target nor a reboot fixes anything.
Does nginx suppress the 8080 port so I can’t access it directly? Whether it does or doesn’t, how do I troubleshoot this? I see all the connect errors in the logs, but I don’t see a reason causing the trouble to have started.

Could you paste the logs and the config files ?

I cleared logs, did a reboot, tried to access the UI at 8080, here are the logs:

api.log and legacy.log are empty.

analyzer.log:

Version:0.9 StartHTML:-1 EndHTML:-1 StartFragment:128 EndFragment:1599 StartSelection:128 EndSelection:1599
2023-02-28 09:30:53.470 | ERROR | libretime_analyzer.message_listener:__init__:45 - Connection to message queue failed.
2023-02-28 09:30:53.471 | ERROR | libretime_analyzer.message_listener:__init__:46 -
2023-02-28 09:30:53.471 | INFO | libretime_analyzer.message_listener:__init__:47 - Retrying in 5 seconds...
2023-02-28 09:30:58.480 | ERROR | libretime_analyzer.message_listener:__init__:45 - Connection to message queue failed.
2023-02-28 09:30:58.482 | ERROR | libretime_analyzer.message_listener:__init__:46 -
2023-02-28 09:30:58.482 | INFO | libretime_analyzer.message_listener:__init__:47 - Retrying in 5 seconds...
2023-02-28 09:31:02.945 | ERROR | libretime_analyzer.message_listener:__init__:45 - Connection to message queue failed.
2023-02-28 09:31:02.946 | ERROR | libretime_analyzer.message_listener:__init__:46 -
2023-02-28 09:31:02.947 | INFO | libretime_analyzer.message_listener:__init__:47 - Retrying in 5 seconds...
2023-02-28 09:31:07.965 | INFO | libretime_analyzer.message_listener:connect_to_messaging_server:76 - Listening for messages...

playout.log:

Version:0.9 StartHTML:-1 EndHTML:-1 StartFragment:128 EndFragment:1098 StartSelection:128 EndSelection:1098
2023-02-28 09:30:53.127 | INFO | libretime_playout.main:cli:49 - ###########################################
2023-02-28 09:30:53.130 | INFO | libretime_playout.main:cli:50 - # *** pypo *** #
2023-02-28 09:30:53.132 | INFO | libretime_playout.main:cli:51 - # Liquidsoap Scheduled Playout System #
2023-02-28 09:30:53.132 | INFO | libretime_playout.main:cli:52 - ###########################################
2023-02-28 09:30:53.138 | INFO | libretime_playout.main:cli:57 - Timezone: ('EST', 'EDT')
2023-02-28 09:30:53.138 | INFO | libretime_playout.main:cli:58 - UTC time: 2023-02-28 14:30:53.138664

…more in following posts…

In these logs I’ve changed the real host names and IP numbers since its on an internal net.

worker.log

Version:0.9 StartHTML:-1 EndHTML:-1 StartFragment:128 EndFragment:1446 StartSelection:128 EndSelection:1446

[2023-02-28 09:30:54,135: ERROR/MainProcess] consumer: Cannot connect to amqp://libretime:**@127.0.0.1:5672//libretime: [Errno 111] Connection refused.

Trying again in 2.00 seconds... (1/100)

[2023-02-28 09:30:56,164: ERROR/MainProcess] consumer: Cannot connect to amqp://libretime:**@127.0.0.1:5672//libretime: [Errno 111] Connection refused.

Trying again in 4.00 seconds... (2/100)

[2023-02-28 09:30:59,631: ERROR/MainProcess] consumer: Cannot connect to amqp://libretime:**@127.0.0.1:5672//libretime: [Errno 111] Connection refused.

Trying again in 6.00 seconds... (3/100)

[2023-02-28 09:31:05,651: INFO/MainProcess] Connected to amqp://libretime:**@127.0.0.1:5672//libretime

[2023-02-28 09:31:05,674: INFO/MainProcess] mingle: searching for neighbors

[2023-02-28 09:31:06,709: INFO/MainProcess] mingle: all alone

[2023-02-28 09:31:06,738: INFO/MainProcess] celery@radio.my.server.com ready.

liquidsoap.log:

Version:0.9 StartHTML:-1 EndHTML:-1 StartFragment:128 EndFragment:11720 StartSelection:128 EndSelection:11720

2023-02-28 09:31:53.881 | ERROR | libretime_api_client._client:_request:78 - HTTPConnectionPool(host='radio.my.server.com', port=8080): Max retries exceeded with url: /api/v2/info (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7fa20eef03a0>: Failed to establish a new connection: [Errno 111] Connection refused'))

2023-02-28 09:32:55.550 | ERROR | libretime_api_client._client:_request:78 - HTTPConnectionPool(host='radio.my.server.com', port=8080): Max retries exceeded with url: /api/v2/info (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7f3b391e73a0>: Failed to establish a new connection: [Errno 111] Connection refused'))

2023-02-28 09:33:56.748 | ERROR | libretime_api_client._client:_request:78 - HTTPConnectionPool(host='radio.my.server.com', port=8080): Max retries exceeded with url: /api/v2/info (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7f80f6d3b3a0>: Failed to establish a new connection: [Errno 111] Connection refused'))

2023-02-28 09:34:57.970 | ERROR | libretime_api_client._client:_request:78 - HTTPConnectionPool(host='radio.my.server.com', port=8080): Max retries exceeded with url: /api/v2/info (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7f8ea9b463a0>: Failed to establish a new connection: [Errno 111] Connection refused'))

2023-02-28 09:35:59.222 | ERROR | libretime_api_client._client:_request:78 - HTTPConnectionPool(host='radio.my.server.com', port=8080): Max retries exceeded with url: /api/v2/info (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7ffa9fa5b3a0>: Failed to establish a new connection: [Errno 111] Connection refused'))

2023-02-28 09:37:00.480 | ERROR | libretime_api_client._client:_request:78 - HTTPConnectionPool(host='radio.my.server.com', port=8080): Max retries exceeded with url: /api/v2/info (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7f53f08293a0>: Failed to establish a new connection: [Errno 111] Connection refused'))

2023-02-28 09:38:01.763 | ERROR | libretime_api_client._client:_request:78 - HTTPConnectionPool(host='radio.my.server.com', port=8080): Max retries exceeded with url: /api/v2/info (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7f49c26923a0>: Failed to establish a new connection: [Errno 111] Connection refused'))

2023-02-28 09:39:02.985 | ERROR | libretime_api_client._client:_request:78 - HTTPConnectionPool(host='radio.my.server.com', port=8080): Max retries exceeded with url: /api/v2/info (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7f77fa2243a0>: Failed to establish a new connection: [Errno 111] Connection refused'))

2023-02-28 09:40:04.306 | ERROR | libretime_api_client._client:_request:78 - HTTPConnectionPool(host='radio.my.server.com', port=8080): Max retries exceeded with url: /api/v2/info (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7f0d4228b3a0>: Failed to establish a new connection: [Errno 111] Connection refused'))

2023-02-28 09:41:05.622 | ERROR | libretime_api_client._client:_request:78 - HTTPConnectionPool(host='radio.my.server.com', port=8080): Max retries exceeded with url: /api/v2/info (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7fa3aaa543a0>: Failed to establish a new connection: [Errno 111] Connection refused'))

2023-02-28 09:42:06.995 | ERROR | libretime_api_client._client:_request:78 - HTTPConnectionPool(host='radio.my.server.com', port=8080): Max retries exceeded with url: /api/v2/info (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7fbfaa31e3a0>: Failed to establish a new connection: [Errno 111] Connection refused'))

2023-02-28 09:43:08.231 | ERROR | libretime_api_client._client:_request:78 - HTTPConnectionPool(host='radio.my.server.com', port=8080): Max retries exceeded with url: /api/v2/info (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7f34942de3a0>: Failed to establish a new connection: [Errno 111] Connection refused'))

2023-02-28 09:44:09.529 | ERROR | libretime_api_client._client:_request:78 - HTTPConnectionPool(host='radio.my.server.com', port=8080): Max retries exceeded with url: /api/v2/info (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7fd0e55be3a0>: Failed to establish a new connection: [Errno 111] Connection refused'))

2023-02-28 09:45:10.782 | ERROR | libretime_api_client._client:_request:78 - HTTPConnectionPool(host='radio.my.server.com', port=8080): Max retries exceeded with url: /api/v2/info (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7fa7970eb3a0>: Failed to establish a new connection: [Errno 111] Connection refused'))

2023-02-28 09:46:12.035 | ERROR | libretime_api_client._client:_request:78 - HTTPConnectionPool(host='radio.my.server.com', port=8080): Max retries exceeded with url: /api/v2/info (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7fa553dc33a0>: Failed to establish a new connection: [Errno 111] Connection refused'))

2023-02-28 09:47:13.249 | ERROR | libretime_api_client._client:_request:78 - HTTPConnectionPool(host='radio.my.server.com', port=8080): Max retries exceeded with url: /api/v2/info (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7f8c69cb03a0>: Failed to establish a new connection: [Errno 111] Connection refused'))

2023-02-28 09:48:14.493 | ERROR | libretime_api_client._client:_request:78 - HTTPConnectionPool(host='radio.my.server.com', port=8080): Max retries exceeded with url: /api/v2/info (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7f4a355d93a0>: Failed to establish a new connection: [Errno 111] Connection refused'))

2023-02-28 09:49:15.722 | ERROR | libretime_api_client._client:_request:78 - HTTPConnectionPool(host='radio.my.server.com', port=8080): Max retries exceeded with url: /api/v2/info (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7f7aa03393a0>: Failed to establish a new connection: [Errno 111] Connection refused'))

2023-02-28 09:50:16.961 | ERROR | libretime_api_client._client:_request:78 - HTTPConnectionPool(host='radio.my.server.com', port=8080): Max retries exceeded with url: /api/v2/info (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7f4f7083b3a0>: Failed to establish a new connection: [Errno 111] Connection refused'))

2023-02-28 09:51:18.236 | ERROR | libretime_api_client._client:_request:78 - HTTPConnectionPool(host='radio.my.server.com', port=8080): Max retries exceeded with url: /api/v2/info (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7fcdcd7943a0>: Failed to establish a new connection: [Errno 111] Connection refused'))

2023-02-28 09:52:19.462 | ERROR | libretime_api_client._client:_request:78 - HTTPConnectionPool(host='radio.my.server.com', port=8080): Max retries exceeded with url: /api/v2/info (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7f39ed71c3a0>: Failed to establish a new connection: [Errno 111] Connection refused'))

2023-02-28 09:53:20.713 | ERROR | libretime_api_client._client:_request:78 - HTTPConnectionPool(host='radio.my.server.com', port=8080): Max retries exceeded with url: /api/v2/info (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7fbd305a93a0>: Failed to establish a new connection: [Errno 111] Connection refused'))

2023-02-28 09:54:22.018 | ERROR | libretime_api_client._client:_request:78 - HTTPConnectionPool(host='radio.my.server.com', port=8080): Max retries exceeded with url: /api/v2/info (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7f93a620b3a0>: Failed to establish a new connection: [Errno 111] Connection refused'))

2023-02-28 09:55:23.219 | ERROR | libretime_api_client._client:_request:78 - HTTPConnectionPool(host='radio.my.server.com', port=8080): Max retries exceeded with url: /api/v2/info (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7fc14c7b23a0>: Failed to establish a new connection: [Errno 111] Connection refused'))

2023-02-28 09:56:24.479 | ERROR | libretime_api_client._client:_request:78 - HTTPConnectionPool(host='radio.my.server.com', port=8080): Max retries exceeded with url: /api/v2/info (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7febaefdf3a0>: Failed to establish a new connection: [Errno 111] Connection refused'))

2023-02-28 09:57:25.736 | ERROR | libretime_api_client._client:_request:78 - HTTPConnectionPool(host='radio.my.server.com', port=8080): Max retries exceeded with url: /api/v2/info (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7fa5a2eb83a0>: Failed to establish a new connection: [Errno 111] Connection refused'))

2023-02-28 09:58:26.975 | ERROR | libretime_api_client._client:_request:78 - HTTPConnectionPool(host='radio.my.server.com', port=8080): Max retries exceeded with url: /api/v2/info (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7f60303133a0>: Failed to establish a new connection: [Errno 111] Connection refused'))

2023-02-28 09:59:28.224 | ERROR | libretime_api_client._client:_request:78 - HTTPConnectionPool(host='radio.my.server.com', port=8080): Max retries exceeded with url: /api/v2/info (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7fd1e295b3a0>: Failed to establish a new connection: [Errno 111] Connection refused'))

2023-02-28 10:00:29.469 | ERROR | libretime_api_client._client:_request:78 - HTTPConnectionPool(host='radio.my.server.com', port=8080): Max retries exceeded with url: /api/v2/info (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7f46049093a0>: Failed to establish a new connection: [Errno 111] Connection refused'))

2023-02-28 10:01:30.758 | ERROR | libretime_api_client._client:_request:78 - HTTPConnectionPool(host='radio.my.server.com', port=8080): Max retries exceeded with url: /api/v2/info (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7fa434a3b3a0>: Failed to establish a new connection: [Errno 111] Connection refused'))

2023-02-28 10:02:31.955 | ERROR | libretime_api_client._client:_request:78 - HTTPConnectionPool(host='radio.my.server.com', port=8080): Max retries exceeded with url: /api/v2/info (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7f57d7e473a0>: Failed to establish a new connection: [Errno 111] Connection refused'))

config.yml (generated pw and keys obscured)

# See https://libretime.org/docs/admin-manual/setup/configuration/

general:
  # The public url.
  # > this field is REQUIRED
  public_url: http://a.b.c.d:8080
  # The internal API authentication key.
  # > this field is REQUIRED
  api_key: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

  # List of origins allowed to access resources on the server, the public url
  # origin is automatically included.
  # > default is []
  allowed_cors_origins: []

  # The server timezone, should be a lookup key in the IANA time zone database,
  # for example Europe/Berlin.
  # > default is UTC
  timezone: America/New_York

  # How many hours ahead Playout should cache scheduled media files.
  # > default is 1
  cache_ahead_hours: 1

  # Authentication adaptor to use for the legacy service, specify a class like
  # LibreTime_Auth_Adaptor_FreeIpa to replace the built-in adaptor.
  # > default is local
  auth: local

storage:
  # Path of the storage directory.
  # > default is /srv/libretime
  path: /srv/libretime

database:
  # The hostname of the PostgreSQL server.
  # > default is localhost
  host: localhost
  # The port of the PostgreSQL server.
  # > default is 5432
  port: 5432
  # The name of the PostgreSQL database.
  # > default is libretime
  name: libretime
  # The username of the PostgreSQL user.
  # > default is libretime
  user: libretime
  # The password of the PostgreSQL user.
  # > default is libretime
  password: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

rabbitmq:
  # The hostname of the RabbitMQ server.
  # > default is localhost
  host: localhost
  # The port of the RabbitMQ server.
  # > default is 5672
  port: 5672
  # The virtual host of RabbitMQ server.
  # > default is /libretime
  vhost: /libretime
  # The username of the RabbitMQ user.
  # > default is libretime
  user: libretime
  # The password of the RabbitMQ user.
  # > default is libretime
  password: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

playout:
  # Liquidsoap connection host.
  # > default is localhost
  liquidsoap_host: localhost
  # Liquidsoap connection port.
  # > default is 1234
  liquidsoap_port: 1234

  # The format for recordings.
  # > must be one of (ogg, mp3)
  # > default is ogg
  record_file_format: ogg
  # The bitrate for recordings.
  # > default is 256
  record_bitrate: 256
  # The samplerate for recordings.
  # > default is 44100
  record_samplerate: 44100
  # The number of channels for recordings.
  # > default is 2
  record_channels: 2
  # The sample size for recordings.
  # > default is 16
  record_sample_size: 16

liquidsoap:
  # Liquidsoap server listen address.
  # > default is 127.0.0.1
  server_listen_address: "127.0.0.1"
  # Liquidsoap server listen port.
  # > default is 1234
  server_listen_port: 1234

  # Input harbor listen address.
  # > default is ["0.0.0.0"]
  harbor_listen_address: ["0.0.0.0"]

stream:
  # Inputs sources.
  inputs:
    # Main harbor input.
    main:
      # Harbor input public url. If not defined, the value will be generated from
      # the [general.public_url] hostname, the input port and mount.
      public_url:
      # Mount point for the main harbor input.
      # > default is main
      mount: main
      # Listen port for the main harbor input.
      # > default is 8001
      port: 8001

    # Show harbor input.
    show:
      # Harbor input public url. If not defined, the value will be generated from
      # the [general.public_url] hostname, the input port and mount.
      public_url:
      # Mount point for the show harbor input.
      # > default is show
      mount: show
      # Listen port for the show harbor input.
      # > default is 8002
      port: 8002

  # Output streams.
  outputs:
    # Default icecast output
    # This can be reused to define multiple outputs without duplicating data
    .default_icecast_output: &default_icecast_output
      host: localhost
      port: 8000
      source_password: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
      admin_password: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
      name: LibreTime!
      description: LibreTime Radio!
      website: https://libretime.org
      genre: various

    # Icecast output streams.
    # > max items is 3
    icecast:
      # The default Icecast output stream
      - <<: *default_icecast_output
        enabled: true
        public_url:
        mount: main
        audio:
          format: ogg
          bitrate: 256

      # You can define extra outputs by reusing the default output using a yaml anchor
      - <<: *default_icecast_output
        enabled: false
        mount: main-low
        audio:
          format: ogg
          bitrate: 128

      - # Whether the output is enabled.
        # > default is false
        enabled: false
        # Output public url, If not defined, the value will be generated from
        # the [general.public_url] hostname, the output port and mount.
        public_url:
        # Icecast server host.
        # > default is localhost
        host: localhost
        # Icecast server port.
        # > default is 8000
        port: 8000
        # Icecast server mount point.
        # > this field is REQUIRED
        mount: main
        # Icecast source user.
        # > default is source
        source_user: source
        # Icecast source password.
        # > this field is REQUIRED
        source_password: hackme
        # Icecast admin user.
        # > default is admin
        admin_user: admin
        # Icecast admin password. If not defined, statistics will not be collected.
        admin_password: hackme

        # Icecast output audio.
        audio:
          # Icecast output audio format.
          # > must be one of (aac, mp3, ogg, opus)
          # > this field is REQUIRED
          format: ogg
          # Icecast output audio bitrate.
          # > must be one of (32, 48, 64, 96, 128, 160, 192, 224, 256, 320)
          # > this field is REQUIRED
          bitrate: 256

          # format=ogg only field: Embed metadata (track title, artist, and show name)
          # in the output stream. Some bugged players will disconnect from the stream
          # after every songs when playing ogg streams that have metadata information
          # enabled.
          # > default is false
          enable_metadata: false

        # Icecast stream name.
        name: LibreTime!
        # Icecast stream description.
        description: LibreTime Radio!
        # Icecast stream website.
        website: https://libretime.org
        # Icecast stream genre.
        genre: various

    # Shoutcast output streams.
    # > max items is 1
    shoutcast:
      - # Whether the output is enabled.
        # > default is false
        enabled: false
        # Output public url. If not defined, the value will be generated from
        # the [general.public_url] hostname and the output port.
        public_url:
        # Shoutcast server host.
        # > default is localhost
        host: localhost
        # Shoutcast server port.
        # > default is 8000
        port: 8000
        # Shoutcast source user.
        # > default is source
        source_user: source
        # Shoutcast source password.
        # > this field is REQUIRED
        source_password: hackme
        # Shoutcast admin user.
        # > default is admin
        admin_user: admin
        # Shoutcast admin password. If not defined, statistics will not be collected.
        admin_password: hackme

        # Shoutcast output audio.
        audio:
          # Shoutcast output audio format.
          # > must be one of (aac, mp3)
          # > this field is REQUIRED
          format: mp3
          # Shoutcast output audio bitrate.
          # > must be one of (32, 48, 64, 96, 128, 160, 192, 224, 256, 320)
          # > this field is REQUIRED
          bitrate: 256

        # Shoutcast stream name.
        name: LibreTime!
        # Shoutcast stream website.
        website: https://libretime.org
        # Shoutcast stream genre.
        genre: various

    # System outputs.
    # > max items is 1
    system:
      - # Whether the output is enabled.
        # > default is false
        enabled: false
        # System output kind.
        # > must be one of (alsa, ao, oss, portaudio, pulseaudio)
        # > default is alsa
        kind: alsa

The interesting part is probably in the nginx config file, since you edited it.

Could you paste it as well?

Even if I stop the nginx service I still can’t get 8080. But anyway here it is, the system has two network interfaces. I wasn’t sure if I need on the server_name lines to list all possible IP names and numbers the server might appear as. Even just using only radio.my.server.com alone didn’t make a difference. I’ve also tried running install a few times. First rerun brought back 8080, but briefly. After a few more installs 8080 has never worked again. The install line was sudo ./install -p 8080 http://radio.my.server.com:8080

server {
  listen 80;
  server_name radio.my.server.com radio 1.2.3.4 5.6.7.8;

  location / {
     rewrite ^ https://radio.my.server.com$request_uri? ;
  }
}

server {
  listen   443 ssl;
  server_name radio.my.server.com radio 1.2.3.4 5.6.7.8;
  ssl_certificate        /etc/libretime/certs/chain.pem;
  ssl_certificate_key    /etc/libretime/certs/radio.plain.key;

  access_log /var/log/nginx/libretime.access.log;
  error_log  /var/log/nginx/libretime.error.log;

  location / {
        proxy_set_header Host              $host;
        proxy_set_header X-Real-IP         $remote_addr;
        proxy_set_header X-Forwarded-For   $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_set_header X-Forwarded-Host  $host;
        proxy_set_header X-Forwarded-Port  $server_port;

        proxy_pass http://5.6.7.8:8080/;
  }
}

LibreTime is relying on nginx to serve the web app, so if you stop nginx you will never have access to Libretime.

The installer deploys a nginx configuration file at /etc/nginx/sites-available/libretime.conf.
This nginx configuration will listen at the --listen-port option you defined for the ./install command. The PUBLIC_URL you used for the install command is going to the configuration file general.public_url.

After the first installation, the installer will not update the listen-port unless you add --update-nginx, and will also never update the public url, since the config has already been deployed.

With the command you used to install libretime, you should be able to access libretime at http://radio.my.server.com:8080.

If you configure a reverse proxy libretime (with the configuration you pasted), you want to change the public_url in the configuration file to https://radio.my.server.com and leave the libretime nginx configuration as it is. With proxy pass setting pointing to http://<libretime_ip>:8080/;

If you replaced the libretime.conf file with your own, libretime will not show up either.

OK, I got it running now. I didn’t realize the ssl config was to be added to the existing libretime.conf, not replace it. Thanks.