+
+ Cloudflare Tunnel
+
+ {tunnel?.tokenSet
+ ? `token saved (${tunnel.source}) - ${tunnel.container}`
+ : tunnel?.container === 'unavailable'
+ ? 'Docker socket unavailable'
+ : 'not configured'}
+
+
+
+ Expose this instance through a Cloudflare Tunnel. Create a tunnel in the dashboard,
+ copy the token, paste it here - the cloudflared sidecar is managed for you.
+
+
+ setTokenDraft(e.target.value)}
+ className="flex-1 h-9 px-3 rounded-[var(--radius-md)] border border-[var(--border-subtle)] bg-[var(--bg-void)] text-sm focus:border-[var(--accent-primary)] transition-colors"
+ placeholder={tunnel?.tokenSet ? 'Token saved - paste a new one to rotate' : 'eyJhIjo... tunnel token'}
+ />
+
+ Save
+
+ {tunnel?.tokenSet && tunnel.source === 'app' ? (
+
+ Remove
+
+ ) : null}
+
+
+ Open Cloudflare Zero Trust dashboard - Networks → Tunnels → Create
+
+
+