Caddy is its own web server, and doesn't require nginx. If you can have it in front of your "real" web server, it will manage certificates automatically, through HTTP or TLS-ALPN.
If you want to use Certbot with DNS challenges instead of Caddy, then yes you'd want acme-dns, with the proper delegation from your name to it. It has quite a bit of documentation that I recommend you read through.