[Feature]: Make dashboard port configurable via DASHBOARD_PORT env variable

Open Beginner friendly
#1,380 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
2/5
Estimated time
1-3 hours
Newbie friendliness
76/100
Issue type
Feature
Clarity
Clearly specified
Activity status
Quiet
Tech stack
docker-compose, python
Domain
cli, devops

Research direction

Start with the docker-compose.yml template and cli.py, especially copy_compose_files(force=True), then compare the existing FRONTEND_PORT and LANGFLOW_PORT mappings. Configure the dashboards mapping to use DASHBOARD_PORT while retaining 5601 as the default, and verify that the generated compose setup honors ~/.openrag/tui/.env without breaking the default.

Written by the indexing model from the issue text.

Description

enhancement
Feature Area

Settings (configuration, model providers)

Problem Description
  • The dashboards service port is currently hardcoded as "5601:5601"
    in the docker-compose template
    • If port 5601 is already in use on the host, there is no way to change it — the TUI CLI force-copies the bundled template on every startup
      (copy_compose_files(force=True) in cli.py), overwriting any manual
      edits to ~/.openrag/tui/docker-compose.yml
    • This makes it consistent with other services (openrag-frontend,
      langflow) which already support configurable ports via FRONTEND_PORT
      and LANGFLOW_PORT
Proposed Solution

In docker-compose.yml, change the dashboards port mapping
from:

yaml         
 ports:
   - "5601:5601"

 to:

 ports:
   - "${DASHBOARD_PORT:-5601}:5601" 

How to use

Add DASHBOARD_PORT=<desired_port> to ~/.openrag/tui/.env:

DASHBOARD_PORT=5600

If not set, it defaults to 5601 (no breaking change).

Use Case

Developers running Kibana, an existing OpenSearch Dashboards instance, or another Elasticsearch-based tool on the same machine will already have port 5601 occupied. Currently there is no way to resolve this without manually patching the installed package on every run.

PS: for me I have changed the bundled package, so that I can change the alternative ports. however, if i run uv sync or reinstall the openrag package, it will be overwritten. Hence I requested this feature.

Alternatives Considered

No response

Priority

Would improve my workflow

Additional Context

No response

Contribution
  • I would be willing to help implement this feature.
  • I can help test this feature once implemented.
Checklist
  • I have searched existing issues and discussions to ensure this feature hasn't been requested before.
Dominant language
Python
Stars
4.6k
Forks
491
Avg merge
2d 9h
Merged PRs (30d)
70

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from langflow-ai/openrag

All issues in langflow-ai/openrag

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.