Many people don’t have access to enough GPUs running in their own internal network to run LLMs, and at the same time, they want to be able to able to surface data to that LLM without putting the data publicly available online. n8n offers a nice solution to do this.
One of my favourite topics to talk about with anyone is self hosting. Some people refer to home automation, some people call it homelabs - I have both, and many other systems, in a fairly vast environment where everything is self hosted.
I truly believe that self hosting is the best way to really understand lots of aspects of technology, privacy, and how to efficiently build and secure systems.
“So, what do you self host?”
I’ve often wondered even howto refer to all this “stuff” I have - which is more than a collection of servers (at home, in cloud, in all different architectures). It’s also more than a collection of services, which ranges from Home Assistant, to Apache clusters, Kubernetes clusters, and everything in between. Do I just give people a list my containers, for example?
This post is written simply for myself to mark the date when I fully decided to ditch Ansible’s containers.podman.podman_containers, and Podman’s nasty port of docker-compose, in favour of Quadlet. Hopefully this page can serve as a useful reference for others considering the same move.
Problems with containers.podman.podman_containers
Ansible is great, but it’s a pain if you ssh on to a server, to find a container is down. You then have to jump on to another server to run the playbook to start the container.
I aggressively use Prometheus in my day-to-day life, not just for regular technical and application metrics, but for everything I can get an exporter for.
I have a Prometheus exporter for my Gmail inbox (personal and work), for my Google calendar (mostly work), all my websites I’ve written export prometheus metrics, I monitor my servers CPU and Memory usage with Prometheus metrics, but also their Hard Drive SMART status. I even have a Prometheus exporter for my fledgling weight loss program. Domain expiry, GitHub stars, virtual machine status, even databases and the watch status of my media library!
Google Photos, the free, easy to use, on-for-many-android-users service has been the single Photo backup strategy for many of those who have used it, since it was released in 2015. I, for one, was amazed to discover that I have uploaded photos dating as far back as 2005, totalling over 80Gb. Initially, Google photos seemed like that ultimate, hassle-free, cloud backup service that would never be replaced…. However, as time went on, I found myself growing increasingly concern about cloud services that “own” my personal data. and I’ve just now managed to clear my data out of Google Photos.
I want to explain how I use this setup, and how I got here. Perhaps I will encourage you, to experiment with your desk and workflow.
Pictured above, is my desk. It does indeed have 6 monitors. It also has 4 computers with 3 operating systems (2x Linux, 1x Windows — for gaming, 1x Mac — for iOS development).
I don’t intend to brag, or show off, or try and say that this set-up is absolutely essential for me and that nothing else would work. However, it certainly works for me. This is what I naturally got to after lots of experimenting over the years. I certainly don’t think having lots of monitors is right for many people — certainly 1 large 4k ultra wide monitor is a very popular option for many people now-a-days.
This post is about how, and why, I use Git Annex to implement my 3-2-1 backup strategy backup strategy. In summary, that is;
At least 3 copies of the data
In at least 2 different storage mediums
With at least 1 copy offsite
In practicality, I’ve used Git Annex to implement more like a 9-5-3 backup strategy and track everything nicely. This strategy should mean that I should not ever lose files that I care about ever again.
This article explains how I solved a couple of challenges of getting my initial environment and configs into Git — the first steps to GitOps.
I’ve been wanting to embrace GitOps for quite some time, but it’s always tricky to know where to start. Do I use Jenkins Jobs — I know Jenkins well? It’s a bit old school though, maybe I should be using Ansible Tower. I’ve heard things about ArgoCD, and lots of others. The truth is, I can’t do anything until I actually have my environment and configuration stored in Git.