NUFI Docs

Ports

Every host port the stack binds, by service.

Full platform (npuops-platform)

Host portContainerContainer portPurpose
3080librechat3080Chat UI
3001console3000Self-service console
3000langfuse-web3000Observability UI
3030grafana3000Dashboards
4000gateway4000AI gateway + admin UI
9090prometheus9090Prometheus UI (admin only)
9093alertmanager9093Alertmanager UI (admin only)

Internal-only services (no host port):

postgres, redis, mongodb, clickhouse, minio, minio-init, langfuse-worker, postgres-exporter, redis-exporter, presidio-analyzer, presidio-anonymizer, llm-guard-api.

Chat-only (nufi-chat)

Host portContainerContainer portPurpose
3081nufi-chat-api3081Chat UI
nufi-chat-mongo27017MongoDB

Admin panel (nufichat-admin-panel)

Host portContainerContainer portPurpose
3000librechat-admin-panel3000Admin SPA

Run on a different host port (or behind a reverse proxy) when co-locating with langfuse-web, which also defaults to 3000.

In dev (HMR)

RepoToolPort
the NUFI Chat applicationAPI3080
the NUFI Chat applicationFrontend3090
Admin panelVite3000
ConsoleVite5173
ConsoleHono3000
nufi-docsNext.js3000

Picking host ports under a single host

If you run everything on one machine and hit conflicts:

  • the NUFI Chat application dev (:3080) collides with the platform-bundled chat (:3080). Run only one at a time.
  • Console dev (:5173) is unique.
  • Admin panel dev (:3000) collides with Langfuse (:3000). Either move the admin panel to a different PORT, or only run one at a time, or use a host-aliased subdomain (*.localhost127.0.0.1).

For day-to-day dev, the cleanest layout is:

  • :3080 — Chat (one or the other, never both)
  • :3000 — Langfuse (platform) OR admin panel (dev) — pick one
  • :3001 — Console (platform)
  • :5173 — Console (dev)
  • :4000 — Gateway
  • :3030 — Grafana
  • :3090 — the NUFI Chat application frontend dev

When in doubt, lsof -iTCP -sTCP:LISTEN -P -n | grep <port> tells you who is squatting.