Ansible scripts for deploying an Mastodon cloud. unmaintained.
You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Ryan d795f68818 Use my own image instead of the upstream 6 years ago
roles Use my own image instead of the upstream 6 years ago
vars Get mastodon to the point where it can start up 6 years ago
.gitignore Initial commit 6 years ago
LICENSE Initial commit 6 years ago Readme as org-mode 6 years ago
cloud-env.yml Put the app instances behind a load balance 6 years ago
inventory-prod WIP for the instance configuration 6 years ago
mastodon.yml Add cadvisor and node-exporter to the host 6 years ago
vault.yml Add SMTP auth details 6 years ago

Ansible for Mastodon on AWS

(All of this applies to when this is done)

This will install Mastodon on a number of AWS EC2 instance, after creating a VPC and RDS, putting the instances behind a single load-balancer that you can point a domain name at.


  • sign up for AWS, create an access token for your user, and write a boto configuration file.
  • replace the vault.yml file with a file that provides the following variables:

    • ansible_vault_rds_master_password: a random password for your rds master user
    • ansible_vault_rds_master_username: your rds master user's name
  • run ansible-playbook -i inventory-prod cloud-env.yml
  • run ansible-playbook -i inventory-prod mastodon.yml