diff --git a/README.md b/README.md index c011655..5cc5807 100644 --- a/README.md +++ b/README.md @@ -12,13 +12,13 @@ ## Summary -This project is a configurable playbook that can install, configure and customize Pleroma on an Alpine Linux host. +This project is a configurable playbook that can install, configure and customise Pleroma on an Alpine Linux host. The playbook is currently used to manage my personal instance at https://fedi.dananglin.me.uk. It currently only supports installing Pleroma on a single host but will support installing it across multipe hosts in the future. This project was inspired by the official [Pleroma OTP installation guide](https://docs.pleroma.social/otp_en.html#content). -This project is developed over at https://gitlab.com/dananglin/pleroma-ansible-playbook. The master branch is mirrored over at https://github.com/dananglin/pleroma-ansible-playbook +This project is developed over at https://gitlab.com/dananglin/pleroma-ansible-playbook. The master branch is mirrored over at https://github.com/dananglin/pleroma-ansible-playbook. ### Ansible roles @@ -31,7 +31,7 @@ There are four roles used to install and configure Pleroma including: ### Additional features -- **Let's Encrypt support:** This playbook creates a SSL certificate using Let's Encrypt. +- **Let's Encrypt support:** This playbook creates a TLS certificate using Let's Encrypt. - **Keybase support:** Pleroma does not support Keybase out of the box but you can still prove that your ownership of your Pleroma site. - **Set default background:** You can specify an image to use as the default background of your Pleroma site. - **Upload custom themes:** You can upload custom Pleroma themes in to your Pleroma instance. @@ -39,10 +39,21 @@ There are four roles used to install and configure Pleroma including: ## Requirements -- A controller host running [Ansible](https://www.ansible.com/) version 2.8+. -- `make` and `openssl` on the controller host which are used to generate secret values. -- A target host running [Alpine Linux](https://www.alpinelinux.org/) version 3.10. +### For your controller host + +- The controller host should the following packages installed: + - [Ansible](https://www.ansible.com/) version 2.8+. + - make + - openssl + +### For your target Pleroma host + +- The target host should be running [Alpine Linux](https://www.alpinelinux.org/) version 3.10+. - A (sub)domain which resolves to the IP address of the target host. +- A user with sudo privileges (optional, but preferable). +- The following packages installed: + - sudo + - python (version 3.5 or higher) ## Configuration @@ -62,7 +73,7 @@ Following secrets are not included in the default configuration and must be gene - **vapid key pair for web push encryption:** This is a private and public key pair so that Pleroma can used [VAPID](https://tools.ietf.org/html/rfc8292) to identify itself to the web push service (for notifications in the browser). - **database password:** This is used to authenticate access to the Pleroma database. -Insstructions on generating these can be found in the guide below. +Instructions on generating these can be found in the guide below. It is recommended to encrypt these secrets using [Ansible Vault](https://docs.ansible.com/ansible/latest/user_guide/vault.html). ## Guide to setting up and running the playbook @@ -72,7 +83,7 @@ It is recommended to encrypt these secrets using [Ansible Vault](https://docs.an $ cp examples/inventory.yml ./ ``` -- In the inventory file you've just copied change **\** to the IP address of the target host and change **\** to the user on the target host with sudo priviledges. +- In the inventory file you've just copied change **\** to the IP address of the target host and change **\** to the user on the target host with sudo privileges. - Copy the [example playbook file](examples/site.yml) to the root of the project. ```bash