Skip to content

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

Draft
paul-nechifor wants to merge 1 commit into
paul/feat/t12d-relay-authfrom
paul/feat/t12e-relay-hosting
Draft

feat(web): relay Dockerfile, compose file, and hosting guide#3954
paul-nechifor wants to merge 1 commit into
paul/feat/t12d-relay-authfrom
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

Greptile Summary

Adds production-oriented packaging and documentation for hosting the web relay.

  • Builds the relay and web applications into an unprivileged Deno container.
  • Provides a Compose deployment with TLS/auth configuration mounted read-only and TCP/UDP 443 published.
  • Documents certificate renewal, authentication, robot/operator setup, systemd deployment, LAN certificates, and troubleshooting.
  • Adds a CI image-build check and links the hosting guide from existing web documentation.

Confidence Score: 5/5

Merge-safe: no outstanding issues require changes before merging.

No accepted new findings or outstanding previous findings contribute to the assessment.

Reviews (2): Last reviewed commit: "feat(web): relay Dockerfile, compose fil..." | Re-trigger Greptile

@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                      @@
##             paul/feat/t12d-relay-auth    #3954   +/-   ##
============================================================
  Coverage                             ?   78.16%           
============================================================
  Files                                ?     1428           
  Lines                                ?   134916           
  Branches                             ?    11644           
============================================================
  Hits                                 ?   105453           
  Misses                               ?    26160           
  Partials                             ?     3303           
Components Coverage Δ
Tests 94.50% <ø> (?)
Flag Coverage Δ
OS-ubuntu-24.04-arm 74.48% <ø> (?)
OS-ubuntu-latest 75.05% <ø> (?)
Py-3.10 75.04% <ø> (?)
Py-3.11 75.04% <ø> (?)
Py-3.12 75.04% <ø> (?)
Py-3.13 75.04% <ø> (?)
Py-3.14 74.48% <ø> (?)
Py-3.14t 75.05% <ø> (?)
SelfHosted-Large 30.75% <ø> (?)
SelfHosted-Linux 35.57% <ø> (?)

Flags with carried forward coverage won't be shown. Click here to find out more.

🚀 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
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.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants