Skip to content

Port Map

Every service runs as a container in the compose project under /opt/logrite-stack/ on each VM. The table is generated from the deployment catalogue, ops/deploy/services.json in LogriteMasterControl (port = the container port, ports_mappings = host:container). A service with no mapping is reached only on the docker network, by its compose service name.

ServiceContainer portHost mapping (dev)Host mapping (prod)Public hostname (dev)
frontend30003000:30003000:3000dev-app.logrite.ai
backend80809800:80809800:8080dev-leapfrogapi.logrite.ai
analyzer9001 dev / 9000 prod9001:90019000:9000dev-analyzer.logrite.ai
semantic-search91009100:91009100:9100dev-search.logrite.ai
ai-service (Cortex)93009300:93009300:9300dev-aiservice.logrite.ai
mcp-server95009500:95009500:9500dev-mcp.logrite.ai
warden96009600:96009600:9600dev-warden.logrite.ai
ingest-shim97009700:97009700:9700dev-ingest.logrite.ai
demo-seeder99009900:9900— (dev only)—
webhook99999999:99999999:9999dev-webhook.logrite.ai
downtime-tracker87658765:87658765:8765—
devdocs30003067:30003067:3000dev-devdocs.logrite.ai
opensearch92009200:92009200:9200dev-analyticsapi.logrite.ai
opensearch-dashboards56015601:56015601:5601dev-analytics.logrite.ai
elasticsearch (lab)92009201:9200— (dev only)dev-elastic.logrite.ai
kibana (lab)56015602:5601— (dev only)dev-kibana.logrite.ai
jobsearch (demo app, Coolify)90819081:90819081:9081dev-jobsearch.logrite.ai
data-prepper21890 (traces), 21891 (logs)nonenone—
logrite-postgres5432nonenone—
logrite-redis6379nonenone—
logrite-mongo27017—none—

Run on the VM itself (the host mappings above):

Terminal window
curl -s http://127.0.0.1:9800/api/v1/health # backend
curl -s http://127.0.0.1:9001/health # analyzer (9000 on prod)
curl -s http://127.0.0.1:9100/health # semantic-search
curl -s http://127.0.0.1:9300/health # ai-service
curl -s http://127.0.0.1:9500/health # mcp-server
curl -s http://127.0.0.1:9600/health # warden
curl -s http://127.0.0.1:9700/health # ingest-shim
curl -s http://127.0.0.1:9999/health # webhook
curl -s -o /dev/null -w '%{http_code}\n' http://127.0.0.1:3000/ # frontend
curl -s -o /dev/null -w '%{http_code}\n' http://127.0.0.1:3067/ # devdocs

The backend’s bare /health answers a 302 redirect, not the health document; use /api/v1/health.

Terminal window
# `sudo` is required: the listener is a root-owned docker-proxy
sudo ss -ltnp | grep :9300
docker ps --format '{{.Names}}\t{{.Ports}}' | grep 9300