Skip to content

[Feature] Configurable dashboard hostname #1137

Open
@blazeej

Description

Is your feature request related to a problem? Please describe.
We deploy multiple services on the same VM, each using a different port. Every service has its own CNAME DNS record pointing to the VM hostname. For example, service-1 will be accessible only at service-a.apps.example.com:port and not at service-b.apps.example.com:port. However, the dashboard is currently accessible at each of these CNAME addresses because it listens on localhost.

Describe the solution you'd like
Extend the Fluent API to include methods that allow specifying the desired hostname, e.g.:

JobRunr.configure()
  .useDashboardIf(true, usingStandardDashboardConfiguration()
    .andHostname("my-app.example.com")
    .andPort(8090))
    ...

Then, the HttpServer creation, which currently looks like this: HttpServer.create(new InetSocketAddress(port), 0), can be updated to use the provided hostname (if present): new InetSocketAddress(hostname, port).

Describe alternatives you've considered
I noticed that the Pro version allows hosting the dashboard on the same address as the application. However, we are currently using JobRunr for a simple service that handles a small part of our processes. Given this, it may be difficult to justify purchasing a license to management.

Additional context
I know that the issue probably affects a small number of users, but adding an option in the configuration seems to have little impact. While going through the issues, I found one report that might potentially be related: #394

I'd be happy to prepare a PR if the change is accepted.

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions