From 635e1a9942e091ced135d5fd8f0eb519845dd58f Mon Sep 17 00:00:00 2001 From: Mark Rapson Date: Tue, 22 Sep 2026 21:56:50 +0100 Subject: [PATCH] Document web pairing URL configuration --- docker-compose/README.md | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/docker-compose/README.md b/docker-compose/README.md index 7232487..a143ef6 100644 --- a/docker-compose/README.md +++ b/docker-compose/README.md @@ -167,6 +167,7 @@ Important values: | `PULSE_SIGNAGE_PLAYER_IMAGE` | Image to run on the device. | `git.lzstealth.com/lzstealth/pulse-signage-player:latest` | | `PULSE_SIGNAGE_SHARED_SECRET` | Shared request-signing secret; must match the public stack. | Blank; set it to the public stack's secret. | | `PLAYER_IDENTIFIER` | Unique remote player identifier. | `player-remote` | +| `WEB_PUBLIC_URL` | Public URL of the web application. The pairing QR code opens this URL at `/pairing`. | `https://signage.example.com`; replace this placeholder. | | `PLAYER_PUBLIC_URL` | Optional URL for direct player access. | `http://remote-player.example.com:8081` | | `BRIDGE_PUBLIC_URL` | Bridge URL the player connects back to. | `http://player-bridge.example.com:8090`; replace this placeholder. | | `PLAYER_AGENT_RECONNECT_DELAY_MS` | Delay before reconnecting to the bridge. | `5000` | @@ -196,6 +197,8 @@ A remote deployment has two parts: The remote player does not need database credentials. Set `BRIDGE_PUBLIC_URL` to the externally reachable bridge URL, including its port when required. It must point to the bridge service, not the web dashboard URL. The bridge must be reachable from the device and allow both HTTP requests and the player websocket connection at `/ws/players`. +Set `WEB_PUBLIC_URL` to the URL that users can reach from the device used to scan the QR code, such as `https://pulse.example.com`. The bridge uses this value when generating the QR code, which opens `WEB_PUBLIC_URL/pairing?code=...`. It must be the web application URL, not `PLAYER_PUBLIC_URL` or `BRIDGE_PUBLIC_URL`. + ### Published remote player On the remote device: @@ -271,6 +274,7 @@ Each compose file creates its own named network: 1. Follow [Public Stack Setup](#public-stack-setup) to start the public stack with Docker Compose. 2. Set the same `PULSE_SIGNAGE_SHARED_SECRET` in the public and remote environments. -3. Set `BRIDGE_PUBLIC_URL` to the externally reachable bridge URL. -4. Start the published remote player with the workflow above. -5. Verify that the player appears in Connected clients before testing screen commands. +3. Set `WEB_PUBLIC_URL` to the externally reachable web application URL. +4. Set `BRIDGE_PUBLIC_URL` to the externally reachable bridge URL. +5. Start the published remote player with the workflow above. +6. Verify that the player appears in Connected clients before testing screen commands.