From charlesreid1

Follow instructions here to get Mastodon up and running with Docker: https://github.com/tootsuite/documentation/blob/master/Running-Mastodon/Docker-Guide.md

The biggest hurdle is email - use mailgun for that. That requires setting up mail DNS records, which may take anywhere from 5 minutes to 24 hours to propagate, so have that set up in advance.

You will want to set up mailgun with a subdomain like mailgun.example.com, and have an STMP login and password. When you run the mastodon configure/setup step, you'll be asked if you want to send emails via localhost (no), what provider you want to use (mailgun), and what your SMTP login and password (provided on the domains page https://app.mailgun.com/app/domains/mailgun.example.com)