Skip to content
forked from notthebee/infra

IaC for my Linux/Unix machines

License

Notifications You must be signed in to change notification settings

elmuz/catafalco

 
 

Repository files navigation

CataFalco

An Ansible playbook that sets up an Ubuntu-based home media server/NAS with reasonable security, auto-updates, e-mail notifications and more.

Originally, inspired by @notthebee's playbook, now it's following its own track. It is a continuous work in progress, so don't expect this is working too much as expected :-)

dashboard

Instructions

Install Ansible:

sudo pacman -S ansible

Clone this repository:

git clone https://github.com/elmuz/catafalco

Create a host varialbe file and adjust the variables:

cd catafalco/
mkdir -p host_vars/YOUR_HOSTNAME
vi host_vars/YOUR_HOSTNAME/vars.yml

Create an encrypted secret.yml file and adjust the variables:

ansible-vault create host_vars/YOUR_HOSTNAME/secret.yml
ansible-vault edit host_vars/YOUR_HOSTNAME/secret.yml

Add your custom inventory file to hosts:

cp hosts_example hosts
vi hosts

Install the dependencies:

ansible-galaxy install -r requirements.yml

Finally, run the playbook:

ansible-playbook run.yml -l your-host-here -K

The "-K" parameter is only necessary for the first run, since the playbook configures passwordless sudo for the main login user

For consecutive runs, if you only want to update the Docker containers, you can run the playbook like this:

ansible-playbook run.yml --tags="port,containers"

About

IaC for my Linux/Unix machines

Resources

License

Stars

Watchers

Forks

Languages

  • Jinja 91.5%
  • Python 5.8%
  • Shell 1.6%
  • CSS 1.1%