You would probably want to wrap it with nginx outside of docker-compose; attaching Certbot to it is thankfully very pleasant (https://www.digitalocean.com/community/tutorials/how-to-secu...).
To integrate with SendGrid, you'd set the app.ini (https://docs.gitea.io/en-us/config-cheat-sheet/) to point at SendGrid's SMTP relay (https://sendgrid.com/docs/API_Reference/SMTP_API/getting_sta...).