Have you ever thought about running The Foreman in your living room? On your NAS maybe? To manage your infrastructure, notebooks, appliances the way they should be managed, by code.
I have. My goal was a setup that not only everyone could fire up quickly, but one that would be easy to maintain, simple to upgrade. Because, when you have a family you have limited time to spend in the evening and weekends, don’t you?
Here it is: https://github.com/painless-software/synology-foreman
A Bit of History
In 2018, I originally started with a Vagrant-based setup. It had 2 VMs, one for The Foreman (“enc”), one for the user directory (“identity”) running FreeIPA. The reason was, there was only the foreman-installer back then. It ruled out using Docker, it was literally impossible to run The Foreman in containers.
Roughly a year later, the Foreman Dockerfile took off, which was great news. Remember, we need a setup that is easy to upgrade! There was still a problem, though: I had bought a NAS for my home needs and that would only run Docker alone, or Docker Compose. No way to run Kubernetes, MicroK8s, k3s, OpenShift – what everyone suggested.
Current Status
You can: (from the README)
- Create your personal (Docker Compose) setup with a script execution
- Run the setup locally (or on any target machine that runs Docker and Python)
- Initialize The Foreman with an Ansible playbook you can adapt yourself (so that you could start attaching notebooks to your LAN for installation immediately afterwards)
Where I’m stuck:
- Configuring TFTP and hosting boot images inside The Foreman, for PXE boot to work and trigger new bare-metal installations.
Unfortunately, I lack the insider knowledge (that makes foreman-installer bootstrapped setups so convenient) for me to go the last mile. – Is there anyone who could give me hints to move forward, or even better, who would have a few evenings to spare for some troubleshooting?