To use it, follow the readme to set up ansible and an ssh connection to your server. Edit the varibales in var/main.yml and run the playbook with ansible-playbook roles_playbook.yml -K.

Also check out the lemmy and pixelfed docker installation playbooks.

  • [email protected]@kerala.partyOPM
    link
    fedilink
    arrow-up
    3
    ·
    1 year ago

    It is like a very well written shell script. An Ansible playbook is a set of tasks that are executed one at a time. These tasks are highly customisable and can easily be run on multiple servers. The killer feature is idempotency : you can describe the desired state of the task you want (e.g. copy a config file to a directory) and execute the task any number of times and always get the same result (e.g. all boundary conditions like file already exists at source, parent directory missing, permissions etc. are automatically handled by the ansible file copy task. Bonus feature: you can also replace fields like passwords in this file with values you define in your encrypted vault (like docker secrets/github secrets)). Writing a shell script to handle all these special cases is madness. There is a huge collection of ansible task libraries for everything from software installation, tools, etc.