A Ansible playbook for installing Mastodon
group_vars | ||
roles | ||
LICENSE | ||
README.md | ||
site.yml |
mastible
An Ansible playbook to install Mastodon
Requirements
- Latest stable version of Ansible
- Server(s) running Ubuntu 16.04/18.04/20.04 LTS for hosting Mastodon
Testing status
Mastible was tested on 20/08/2020 with Ansible 2.9.12 running against a Ubuntu 20.04 server.
Instructions for running this playbook (first time install)
- Copy group_vars/all.sample to group_vars/all and edit it to specify the database name you wish to use with Mastodon. LOCAL_DOMAIN value is mandatory, it is your instance domain/sub-domain. The PostgreSQL database role will drop this database in preparation for Mastodon's database setup so make sure this is not a database you are currently using
- Copy roles/mastodon-config/templates/.env.production.sample to roles/mastodon-config/templates/.env.production, edit with all relevant details.
- Make a hosts file that looks like this:
[mastodon]
dev.example.social
- Run the playbook with
ansible-playbook -i hosts --extra-vars='install=true' site.yml
Instructions for using this playbook to update an existing instance
- Update version number in roles/mastodon-app/tasks/main.yml
- Run the playbook with
ansible-playbook -i hosts site.yml
(Note the lack of the install variable which is needed for installation related tasks)