Custom domains for Sprites: port the Fly Apps certificate system

Fly Apps support custom domains via fly certs add. The proxy terminates TLS, Let’s Encrypt
certificates are provisioned automatically, and DNS setup is straightforward (CNAME or
A/AAAA records). It works well.

Sprites don’t have this. The current workarounds all involve third-party proxies
(Cloudflare, Vercel, Caddy on a VPS, etc.) to terminate TLS for the custom domain and
forward to the *.sprites.app URL. These add latency, complexity, and an external dependency
for what is fundamentally a solved problem — Fly.io already has the infrastructure for
this on the same platform.

The request: Port the existing Fly Apps custom domain system to Sprites. Something like:

sprite url update --domain mcp.example.com

which would:

  1. Register the hostname with Fly Proxy (via Corrosion, as it already does for
    *.sprites.app)
  2. Provision a Let’s Encrypt certificate (same flow as fly certs add)
  3. Instruct the user to set a CNAME or A/AAAA record

From the user’s perspective, the only difference between a Fly App and a Sprite is that a
Sprite has a persistent filesystem while a Fly App rebuilds from an image. The networking
and proxy layer shouldn’t need to differ.

4 Likes

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.