Published Oct 26, 2026, 10:30 AM EDT Patrick Campanale has been in the tech space for well over a decade, specializing in PC/gaming news and reviews, as well as maker-focused products to build small businesses. With a start in technology back in 2010 surrounding the Palm/webOS ecosystem, Patrick spent his formative years developing mobile applications as well as blogging for various publications, eventually leading to starting his own website in 2014. After running a technology blog for a few years, he stepped out of that role and into the world of high-end custom PC manufacturing and building, with a focus on YouTube video production and overclocking. Then, in 2017, Patrick joined the 9to5Toys team as an editor/writer/reviewer with over 14,000 articles being published during his time there, ranging from deals and roundups to in-depth reviews on the latest technology, video games, 3D printers, and more. In his free time, Patrick loves to create projects from wood using various robots and methods, including leveraging the technologies of CNCs and lasers. If Patrick isn't working on a computer or playing video games, he's likely in his 2-car garage workshop creating something unique. In addition to all this, Patrick is also the media director at his local church where he feels God has called him to serve, and he loves every minute of it. I've been homelabbing for over half a decade now, and there are two specific Docker containers that are set-and-forget for me. I never think about them, and they just sit there quietly in the background keeping everything going—and those containers are Pi-hole and Caddy. My homelab wouldn't function without these two Docker containers Though I have many more running My homelab has morphed and grown a lot over the years. At the start of 2021, it was just one server running Plex. Today, it's two NAS systems, multiple PCs, and a few virtual machines hosted in the cloud, all orchestrated together by a handful of Docker containers. What are those Docker containers? Well, I have dozens of containers running across all my systems. From Plex to Crafty Controller for Minecraft and WordPress for my website, I have Docker containers going for everything. However, there are two containers that my homelab couldn't function without—and I hardly ever have to think about them. Those two containers are Pi-hole and Caddy. Caddy is the newest addition to my homelab, and it's honestly my favorite set-and-forget container I have. Pi-hole handles all of my internal DNS requests From blocking to custom internal addresses, it does it all Let's start with Pi-hole. Pi-hole is a tried-and-true container in the homelab community. It started as a project to run on a Raspberry Pi, but now can run on almost anything. It's built as a DNS management system. For it to work, I point my router's DNS field to the IP address of the system running Pi-hole. For me, that's my iDX-6011 Pro NAS. From there, Pi-hole does the rest. In my homelab, Pi-hole is mostly a blocking system. It blocks trackers, ads, and a whole lot more. I have a lot of very custom entries in the allow and deny lists as well, which make things like YouTube watch history possible even with Pi-hole's blocking. Pi-hole does more than just block though. It can also serve custom DNS entries for websites within the LAN (local area network). For instance, if I want to be able to navigate to photos.domain.com inside of my home's network and have it go to Immich, then I can set that up with Pi-hole. Essentially, Pi-hole acts like the domain name server for when that domain is accessed. The way I have mine set up is I have Pi-hole pointing to a separate Caddy instance on a virtual machine that handles the web requests and redirects them where they need to go. The benefit of a setup like this is it allows for simple domains inside the LAN but doesn't open those services up to the outside world. I couldn't run my homelab without Caddy It replaced Nginx Proxy Manager and made my homelab simpler at the same time Now, I just mentioned that I use a separate instance of Caddy, and that's true. I have two running in my homelab. I used to use Nginx Proxy Manager (NPM), and I went more than five years before leaving NPM. For me, NPM worked and I was familiar with it. But, I've been working with AI models a lot lately and using them in various ways from launching new containers to troubleshooting my homelab. The problem with Nginx Proxy manager is that AI models couldn't really manage it. With Caddy, all of the files are just written in text on the system, which means I (or an AI model) can create a new entry and then it just starts working. This has been a game-changer for me. Now, when I spin up a new service, I can just have Claude or Codex add an entry to the respective Caddy container for whatever that service is, and it starts working. I actually use wildcards for my DNS pointers to make this even easier. For instance, in Pi-hole, I have *.domain.com set up to point to my internal Caddy instance. So, any time I visit any subdomain.domain.com, it sends the request to Pi-hole (because it's my network's DNS server), and then Pi-hole answers the request and points to Caddy, which then sends you off to the final destination. In Caddy, if that domain doesn't exist, it just lands on a blank landing page. However, if I create a domain entry for whatever service it is, it starts working automatically. I don't have to go create a new DNS record in Pi-hole or with Cloudflare, it just starts working. This is such a simpler setup than Nginx Proxy Manager, and I couldn't imagine my homelab without Caddy at this point. Important homelab infrastructure doesn't have to be shiny These two apps are mostly boring. I don't think about them daily, I'm not accessing dashboards all the time to see how they're doing, and I really don't interact with them much at all. Not directly, at least. But, core infrastructure should be like that. If something is core to your (or my) homelab, it shouldn't be something that is constantly thought about, tinkered with, or anything else. It should just work, and work reliably—and that's exactly what both Pi-hole and Caddy do for me.
These 2 set-and-forget Docker containers do most of my homelab’s work
Full Article
Original Source
Read the full article at Howtogeek →KhanList aggregates and links to publicly available news content. We do not host full articles from third-party sources. Always verify important information with original sources.