Skip to content

feat(web): relay Dockerfile, compose file, and hosting guide - #3954

Open
paul-nechifor wants to merge 1 commit into
mainfrom
paul/feat/t12e-relay-hosting
Open

paul-nechifor wants to merge 1 commit into
mainfrom
paul/feat/t12e-relay-hosting

Conversation

@paul-nechifor

@paul-nechifor paul-nechifor commented Sep 5, 2026

Copy link
Copy Markdown
Contributor

Closes DIM-1174

  • Adds a Docker image and Compose setup for hosting the relay, cockpit, and web SDK on your own server. Certificates and access credentials are supplied through separate configuration files.
  • Adds a hosting guide covering server setup, certificate renewal, and connecting robots and operators. It also explains how to run without Docker or on a local network.
  • Adds a CI check that builds the relay image to catch packaging failures.

@greptile-apps

greptile-apps Bot commented Sep 5, 2026

Copy link
Copy Markdown
Contributor

RetriggerConfidence Score: 5/5

Safe to merge.

Summary

  • Adds a Deno-based relay container, Docker Compose configuration, and CI image-build coverage.
  • Adds robot-key and viewer-token authentication across the shared protocol, relay, Python bridge, SDK, and Cockpit.
  • Prevents relay and API secrets from appearing in configuration output or persisted restart metadata.
  • Documents public-server, systemd, certificate-renewal, and private-LAN deployment workflows.

Reviews (3) · Last reviewed commit: "feat(web): relay Dockerfile, compose fil..."

@codecov

codecov Bot commented Sep 5, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ All tests successful. No failed tests found.

@@            Coverage Diff             @@
##             main    #3954      +/-   ##
==========================================
- Coverage   78.90%   78.89%   -0.01%     
==========================================
  Files        1469     1469              
  Lines      138999   138999              
  Branches    11941    11941              
==========================================
- Hits       109672   109668       -4     
- Misses      25930    25932       +2     
- Partials     3397     3399       +2     
Components Coverage Δ
Tests 94.76% <ø> (-0.01%) ⬇️
Flag Coverage Δ
OS-ubuntu-24.04-arm 74.85% <ø> (ø)
OS-ubuntu-latest 75.55% <ø> (-0.01%) ⬇️
Py-3.10 75.33% <ø> (-0.01%) ⬇️
Py-3.11 75.53% <ø> (-0.01%) ⬇️
Py-3.12 75.54% <ø> (-0.01%) ⬇️
SelfHosted-Large 30.73% <ø> (+<0.01%) ⬆️
SelfHosted-Linux 36.26% <ø> (-0.01%) ⬇️
SelfHosted-macOS 35.60% <ø> (+<0.01%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.
see 2 files with indirect coverage changes

🚀 New features to boost your workflow:
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@leshy
leshy force-pushed the paul/feat/t12e-relay-hosting branch from c8901dd to 6609ec6 Compare September 6, 2026 07:59
@paul-nechifor
paul-nechifor marked this pull request as ready for review September 8, 2026 05:53
@github-actions github-actions Bot added the ready-to-merge Required CI checks have passed on this PR label Sep 8, 2026
@paul-nechifor
paul-nechifor marked this pull request as draft September 8, 2026 06:42
@github-actions github-actions Bot removed the ready-to-merge Required CI checks have passed on this PR label Sep 8, 2026
@paul-nechifor
paul-nechifor force-pushed the paul/feat/t12e-relay-hosting branch from 6609ec6 to a544df2 Compare September 8, 2026 16:36
@paul-nechifor
paul-nechifor force-pushed the paul/feat/t12e-relay-hosting branch from a544df2 to 4c56b2a Compare September 8, 2026 23:31
@paul-nechifor
paul-nechifor force-pushed the paul/feat/t12e-relay-hosting branch from 4c56b2a to eb716f4 Compare September 9, 2026 00:28
@paul-nechifor
paul-nechifor force-pushed the paul/feat/t12e-relay-hosting branch from eb716f4 to 382549d Compare September 9, 2026 02:34
@paul-nechifor
paul-nechifor force-pushed the paul/feat/t12e-relay-hosting branch from 382549d to 14cd90b Compare September 9, 2026 22:54
@paul-nechifor
paul-nechifor force-pushed the paul/feat/t12e-relay-hosting branch from 14cd90b to 346a604 Compare September 10, 2026 00:47
@paul-nechifor
paul-nechifor force-pushed the paul/feat/t12e-relay-hosting branch from 346a604 to 2c1cd2e Compare September 10, 2026 20:00
@paul-nechifor
paul-nechifor force-pushed the paul/feat/t12e-relay-hosting branch from 2c1cd2e to 37c2917 Compare September 11, 2026 05:20
@leshy
leshy force-pushed the paul/feat/t12e-relay-hosting branch from 37c2917 to 1e9a26f Compare September 11, 2026 10:55
@paul-nechifor
paul-nechifor force-pushed the paul/feat/t12e-relay-hosting branch from 1e9a26f to 990bbac Compare September 11, 2026 18:14
@paul-nechifor
paul-nechifor force-pushed the paul/feat/t12e-relay-hosting branch from 990bbac to 4f181e5 Compare September 11, 2026 21:44
Base automatically changed from paul/feat/t12d-relay-auth to main September 14, 2026 17:00
@paul-nechifor
paul-nechifor marked this pull request as ready for review September 14, 2026 18:08
@github-actions github-actions Bot added the ready-to-merge Required CI checks have passed on this PR label Sep 14, 2026
docker/relay/Dockerfile builds web/ into a denoland/deno:2.6.10 image that
runs the relay as the unprivileged deno user with the certificate and auth
file mounted at /etc/relay; Dockerfile.dockerignore replaces the repo-root
.dockerignore, which would drop package.json. compose.yaml publishes 443
TCP+UDP and mounts ./config read-only. docs/usage/relay_hosting.md covers
DNS, firewall, certbot with a deploy hook that installs the files as uid
1993 and restarts the relay, the auth file, robot and operator setup,
systemd without Docker, mkcert on a LAN, troubleshooting, and the demo
checklist. The web CI job builds the image so it cannot rot.
@paul-nechifor
paul-nechifor force-pushed the paul/feat/t12e-relay-hosting branch from 4f181e5 to c800076 Compare September 14, 2026 18:31
@github-actions github-actions Bot removed the ready-to-merge Required CI checks have passed on this PR label Sep 14, 2026
@github-actions github-actions Bot added the ready-to-merge Required CI checks have passed on this PR label Sep 14, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

backport release/0.0.14 ready-to-merge Required CI checks have passed on this PR

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants