Some housekeeping:
Steps:
- Create a dedicated namespace for pi-hole with pihole-namespace.yml. If you change the name, be sure to update it in the rest of the yaml files
- Create a storage class with pihole-sc.yml. In my case, I am running a single-node K3s cluster and will be mounting a local directory
- Create a persistent volume for /etc/pihole and /etc/dnsmasq.d with pihole-pvs.yml
- Create a persistent volume claim for the above with pihole-pvcs.yml
- Create a secret for the pi-hole web password with pihole-admin-secret.yml. Please insert a base64 encoded secret in this file
- Create a service with pihole-services.yml. Be sure to add the DHCP ports if you use that functionality (I don't)
- Create the deployment with pihole-deploy.yml. Adjust the env variables and resources as needed