
Welcome to Pat’s Bytes
Learning in public. I write about Ansible, homelab infrastructure, Linux, and DevOps tooling — mostly things I’m actively building or breaking.Welcome to my corner of the internet where I share tutorials, document tech experiments, and try to save my future self some debugging time. Grab a coffee and dive in.
What You’ll Find Here
This blog isn’t trying to cover everything - it’s a focused collection of real-world guides and solutions I’ve actually implemented.
Most content comes from homelab adventures, work challenges, and concepts I’m solidifying through writing.
Why This Site Exists
We’ve all been there - you solve a complex problem or setup up a new service, write zero documentation, and six months later you’re googling the same issue again. This site is my anti-pattern to that cycle. It’s equal parts:
- Learning in public - Writing helps me understand things better “how did that work again?”
- Personal reference - My searchable record of “how did I get this working again?”
- Shared experiments - Maybe my homelab/tech adventures can help you
Back in Action
After a year-long hiatus, I’m dusting off the blog and migrating from Hugo to MkDocs. Some articles are getting fresh rewrites, others are being retired, and new content is in the pipeline. The rust is coming off slowly but surely.
Before You Dive In
Fair warning: I tend to favor open-source solutions, automate against Proxmox VE, and have strong opinions about YAML indentation.
Your mileage may vary, but the patterns should translate to your environment.
If you spot errors, have questions, or want to share a better approach - please reach out. The best part of learning in public is learning from others.
Ansible Navigator offers a new way to use familiar Ansible tools within execution environments. With it, you can run playbooks, view inventories, access Ansible documentation, and more. Let’s explore some of the basics of Ansible Navigator.
The purpose of Ansible Navigator is to enable running playbooks within execution environments, the same way that Ansible Automation Platform runs jobs inside them. This functionality means you can now develop and test your playbooks in the same environment you would be running in production.
...
Use Jinja2 conditionals to reduce duplicate Ansible tasks without sacrificing readability.
Use HashiCorp Packer to automate the creation of a reusable RHEL template on Proxmox VE.
Generate secure random passwords in Ansible with password and random_string lookups.
Stop copying Python deps by hand. Build custom Ansible Execution Environments using Ansible Builder.
Setup an Ansible development environment in Visual Studio Code
Install and use Ansible collections to extend your automation with reusable content.