Hi! I wanted to share a project I’ve been working on that lets you set up a huge variety of applications really quickly and painlessly. For example, instead of setting up and configuring a large docker compose for a complicated application like Immich, this playbook lets you simply write:
immich_enabled: true
And it will orchestrate all the containers, networks, directories, etc for you with reasonable defaults. All of which can be overwritten, for example to enable extra features like hardware acceleration:
immich_hardware_acceleration: "-cuda"
Or to automatically get a letsencrypt cert and expose the application on a subdomain to the outside world:
immich_available_externally: true
Included in the playbook is a ton of complicated applications, like Paperless, Meelo, TTRSS, Dawarich, as well as common self-hosted apps like Jellyfin, Home Assistant, Syncthing, Navidrome, Grafana, and a whole lot more (totaling 116 right now!).
It also comes with scripts and tests to help add your own applications (ansible roles) and ensure they work properly
I’ve been using this project myself for awhile, including to assist with moving from one homelab computer to another (point the playbook to the new address, run it to install everything, and restore a backup from the previous computer for data), and I hope it can help someone else build up their homelab without sinking too much time into setting things up
Here’s the repository: https://github.com/Dylancyclone/ansible-homelab-orchestration
And the documentation (that I’m really proud of :D): https://dylancyclone.github.io/ansible-homelab-orchestration/



I used a similar project called Ansible NAS a while back and it’s been working beautifully. I had a problem and had to reinstall the OS on my NAS at some point and this made it a breeze. That project requires Ubuntu and I prefer Debian so I may try this out next time.
This is definitely inspired by ansible-nas! I’d also used it for awhile, and made my own fork to add/fix things since the project has gone a little dormant. I started making so many changes though that I started fresh and it turned it into a whole project of it’s own. You can see a list of differences here: https://dylancyclone.github.io/ansible-homelab-orchestration/guides/introduction/
Or copy-pasted:
portainer.example.comon local network without exposing it to the internet)Awesome improvements! Really nice work. I’ll definitely be switching at some point when I have a reason to mess with it. Thanks for all the extra work you’ve done to improve the fork and gift the project to the commons.