I think you're right. In fact, that's the stack I would recommend right now to a new (web) app developer. Write your own Dockerfile, some terraform to spin up a docker host on DO, and a bit of GH Actions yml to pass secrets, build dockerfile, upload to container registry, terraform apply.
It's a fun weekend project. It's interesting how many ways there are to "build your own PaaS".