Files
archy/apps/PORTS.md
ssmithxandClaude Opus 5.5 9fa58ef6a8 qortal: companion status UI, pasta network, spike-measured sizing
Companion UI: nginx inside the qortal image serves apps/qortal/ui on
12390 (gated, now interfaces.main): sync height vs best peer, chain/QDN
peers, version/uptime, Hub connection URL and a gateway launcher. Its
/core/ proxy is a GET-only allowlist of four public Core endpoints and
never carries the API key. start.sh supervises Core + nginx and exits
when either dies; SIGTERM reaches Core (clean shutdown in ~7s).

Spike findings on archy-x250-pa3:
- network: pasta. On a rootless bridge every forwarded connection
  appears to come from the container's own IP, so inbound p2p peers
  would all look identical; Core needs no other app.
- API whitelist off + apiRestricted pinned true (start.sh refuses
  otherwise). Forwarded connections arrive from a dynamic address no
  static whitelist can name; the key guards every state-changing route.
- Bootstrap + sync: 6.8 GB, ~17 min. QDN capped at 20 GiB via
  maxStorageCapacity; storage 40Gi.

API key reveal deliberately left out: the UI cannot verify the
dashboard session from a container, and the gate may be switched to
open at runtime.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-20 01:08:13 +00:00

3.1 KiB

Port Assignments Reference

This document lists all port assignments for Archipelago apps.

Production Ports

App Port(s) Protocol Service Dev Port(s)
bitcoin-core 8332, 8333 TCP RPC, P2P 18332, 18333
btcpay-server 80, 443 TCP HTTP, HTTPS 10080, 10443
home-assistant 8123 TCP Web UI 18123
grafana 3001 TCP Web UI 13001
endurain 8085 TCP Web UI 18085
fedimint 8173, 8174 TCP API, Web UI 18173, 18174
morphos-server 8086 TCP Web UI 18086
lightning-stack 9737, 10010, 8087 TCP P2P, gRPC, REST 19737, 20010, 18087
mempool 4080 TCP Web UI 14080
ollama 11434 TCP API 21434
searxng 8888 TCP Web UI 18888
penpot 8089 TCP Web UI 18089
lnd 9735, 10009, 18080 TCP P2P, gRPC, REST 19735, 20009, 28080
core-lightning 9736, 9835 TCP P2P, gRPC 19736, 19835
nostr-rs-relay 8081 TCP HTTP/WebSocket 18081
strfry 8082 TCP HTTP/WebSocket 18082
did-wallet 8083 TCP Web UI 18083
router 8084, 5353, 1900 TCP/UDP Web UI, mDNS, SSDP 18084, 15353, 11900
meshtastic 4403, 1883 TCP HTTP API, MQTT 14403, 11883
archipelago-source 8337 TCP Authenticated source UI 18337
qortal 12390, 12391, 12392, 12394, 12380 TCP Status UI, API (Hub), P2P, QDN P2P, Gateway 22390, 22391, 22392, 22394, 22380

Development Ports (Offset: +10000)

In development mode, all ports are offset by 10000 to avoid conflicts with production services.

Quick Access URLs (Development)

App Dev URL
Bitcoin Core RPC http://localhost:18332
BTCPay Server http://localhost:10080
Home Assistant http://localhost:18123
Grafana http://localhost:13001
Endurain http://localhost:18085
Fedimint http://localhost:18174
MorphOS Server http://localhost:18086
Lightning Stack http://localhost:18087
Mempool http://localhost:14080
Ollama http://localhost:21434
SearXNG http://localhost:18888
Penpot http://localhost:18089
LND REST http://localhost:18080
Core Lightning http://localhost:19835
Nostr RS Relay http://localhost:18081
Strfry http://localhost:18082
DID Wallet http://localhost:18083
Router http://localhost:18084
Meshtastic http://localhost:14403
GitWorkshop http://localhost:18337

Port Conflict Resolution

All apps use unique base ports to prevent conflicts. The port offset system ensures:

  • No conflicts in production (each app has unique ports)
  • No conflicts in development (offset applied automatically)
  • Easy port management via PortManager

Changing Port Offset

The port offset is configurable via environment variable:

ARCHIPELAGO_PORT_OFFSET=10000

Or in the Archipelago config:

[dev]
port_offset = 10000

Port Ranges

  • Bitcoin/Lightning: 8000-10000 range
  • Web Services: 3000-9000 range
  • System Services: 10000+ range
  • Custom Apps: 8000-9000 range