The Importance of the Homelab

I believe that when more people understand technology, companies providing technology services will be held to a higher standard. So, in service of that, here’s my pitch to get you to start a homelab! What is a Homelab? At its core, a homelab is a safe place to experiment. With hardware, software, networking, and even dealing with angry users when your recipes app isn’t accessible and your significant other really needs the next step for that chili! ...

March 10, 2025 · 5 min · Josh J

LinuxServer.IO Unifi Controller Deprecation

Within an article on their website, LinuxServer.io have announced that they will be deprecating the current linuxserver/unifi-controller public image as of 2024/01/01. Happy New Year! The README on the current tooling that I imagine most are using mentions a direct upgrade if you were using the mongoless tag which, due to what’s colloquially known as “Sod’s Law”, I am not. On the new repo as well as the DockerHub page, the docs currently have a brief mentioning of requiring an external MongoDB instance but the code snippits don’t actuall have one… This seemed a little problematic, and after migrating my setup last night, figured I’d include a quick walkthrough. ...

September 20, 2023 · 3 min · Josh J

UPDATE: Jenkins with HTTPS in a Docker Container

The previous post on this topic is still relevant, however, since my selection of a new reverse proxy, I felt it necessary to publish an update. Assumptions You know what HTTPS and SSL certificates are/do and how the CA ecosystem works You have a domain that you plan to use for the Jenkins instance and this domain either doesn’t have a CAA record or has one that allows LetsEncrypt You understand the general working of containers and have docker installed on your system. Docker/Docker Compose knowledge is a plus but not required, you can basically just copy/paste code to get this working. I’ll also go over some common pitfalls at the end You either have your own reverse proxy setup and can handle this or you’re using my Traefik config You know what Jenkins is and why you should be using it. If you don’t, use the Google machine OK, let’s get this show on the road. ...

June 15, 2020 · 6 min · Josh J

ZNC + Docker - A Containerized IRC Bouncer

Twitter? Garbage. Facebook? Garbage. Do you enjoy having your data harvested and sold? No? Good. Back in the day, there was this thing called Internet Relay Chat. What if I told you… It still exists! Internet socializing without all the Silicon Valley data theft! But due to how the ecosystem works, any time you’re not actively connected to the server, you don’t receive any messages. This means that you don’t get to see conversations that happen while you’re offline, even if somebody mentions you! ...

June 8, 2020 · 10 min · Josh J

Set Up Traefik on Docker - A Modern Reverse Proxy Solution

For many years, I used NGINX as a reverse proxy. It’s pretty bulletproof as long as you have your configuration set up properly from the get-go. There’s even a number of ways to automatially create new SSL certs for new containers but this mostly has to be done in a separate container itself. This makes the process of upgrading, testing, rolling back, patching and whatnot a bit of a mither. Enter Traefik. ...

June 1, 2020 · 6 min · Josh J