Quick answer: GitHub Actions deploys via SSH/Docker to your VPS – no PaaS lock-in; data stays in Frankfurt.
VPS & root servers: Order VPS in Germany · NexoraHost · nexorahost.com (Maincubes FRA01 Frankfurt · Ryzen · NVMe · GDPR)
Frequently asked questions (FAQ)
SSH key in GitHub Secrets?
Yes – deploy key for that host only, least privilege, pin known_hosts fingerprint.
Where to build Docker?
Build on runner, push to GHCR, on VPS only pull and up – faster and reproducible.
Zero downtime?
Careful Compose recreate; or blue-green two ports behind Caddy.
Coolify alternative?
Coolify is UI-heavy; Actions = full control in Git.
Cost?
Public repos: generous free minutes. Private: watch quotas.