- Register a domain name. Buy a cert for it.
- Spin up Ubuntu Trusty 14.04 on AWS & point DNS at the instance. Don't bother making user accounts or anything; only somebody with your key should be able to ssh in. Add security group rules allowing https from anywhere, or maybe http if you want to redirect.
- Make an EBS volume or raid up some instance stores and mount them on
/mnt/mastodon
, owned by ubuntu. - Download all the files in this gist to your local controlling host, e.g., your laptop.
- Make a file named
inventory
with[general]\nyour-host.tld
in it. - Put all of the
*.conf
files in this gist into a subdirectory namedfiles
. - Put your certs somewhere in the directory & make sure the ansible playbook
services.yml
is pointing to them. - Run
ansible-playbook -i inventory host-setup.yml
- Run
ansible-playbook -i inventory mastodon.yml
- you might get ruby 2.3.3 instead of 2.3.1 in which case you should just edit the Gemfile.