tl;dr - AWS App Runner is awesome for deploying applications/services as containers, and it can finally be used with apex domains (ex.
It looks like App Runner has finally added support for top level domains:
A while back I did a mini bake-off of simple AWS container deployment mechanisms for a customer. I explored some options that are container friendly:
Of these, ECS is the most well-known and trusted, and App Runner is the newest, but at the time I kept running into a perplexing issue…
I could only manage to use App Runner for domains like
app.domain.tld, but not
domain.tld, for some reason.
Route53 has some proprietary rules around apex domains (and how you structure your DNS records), and generally allows domains to be pass traffic through to AWS services via an
ALIAS record type.
What was weird was that App Runner didn’t seem to be supported via
ALIAS records. I was so confused that I made a reddit thread in my confusion.
It’s a full year after the thread, but thanks to u/lostworld30 I finally know it wasn’t in my head, though I guess if I’d used the support plan then I would have been able to have an AWS employee tell me it wasn’t in my head.
I’m all in on Kubernetes (see… the rest of this blog), but App Runner is quite possibly the smoothest onboarding experience for running apps on AWS I’ve seen (assuming you’re container-first).
If you don’t think containers are good/useful in 2022, you’re wrong but I wish you happiness with the packaging and orchestration tools you’re using now and hope it works out!
App runner is now probably the best way to deploy small self-contained apps (most standard apps) to AWS now. It just works, and so many concerns are wrapped together and taken care of for you.