Self-hosting a static site using Forgejo, Headscale, and Caddy

Self-hosting a static blog with push-to-deploy: Forgejo Actions ships the site over a Tailscale/Headscale tailnet to a Caddy reverse proxy, with no long-lived SSH keys to manage.