-
The Right Reasons To Run Kubernetes In Your Homela...
Running kubernetes in your homelab is a fantastic way to learn, explore, express yourself, and run services that you use. The Right Reasons To Run Kubernetes In Your Homelab There are not many You want to learn kubernetes You like kubernetes You want to learn to scale There are also the-wrong-reasons-to-run-kubernetes-in-your-homelab You want to learn kubernetes Homelabbing is a such a great way to learn new skills, deploy real apps that you use. Create new custom apps for your specific use case
-
minecraft server memory
I learned to today that setting on your minecraft server causes the JVM to egregiously allocate all of that memory. Not setting it causes slow downs and potential crashes, but setting and gives us the best of both worlds. It is allowed to use more, but does not gobble it all up on startup. In this economy we need to save all the memory we can! Here is a non-working snippet for a minecraft server deployment in kubernetes. and in docker compose
-
The Wrong Reasons To Run Kubernetes In Your Homela...
Running kubernetes in your homelab is complex, time consuming, there are almost no docs to help you (homelab focused docs for things you want to install), and nothing is copy paste. You have to make everything happen yourself. The Wrong Reasons To Run Kubernetes In Your Homelab I run compose and think kubernetes is the next logical step Techno Tim runs it I heard it's what cool kids do Kubernetes BTW Talos Linux looks cool I found a cool helm chart on GitHub I need scale There are also the-right
-
k3s system-upgrade minor by minor
The k3s system-upgrade controller is a fantastic tool for upgrading k3s automatically. It has done a fantastic job for me every time I've used it. Today I ran it on a cluster that needed to upgrade several minors and I learned that the controller does not pick up on changes to the channel url if you change from minor to minor. The solution I came up with was to name the plan with the version it supports. Then on each patch upgrade, change both the plan name and the channel. I use gitops with arg
-
💭 K8s Diagram Builder - Free Visual Kubernetes Arc...
Here's my thought on 💭 K8s Diagram Builder - Free Visual Kubernetes Architecture Desi... This looks like great prototyping tool for k8s. I too often ask ai to…
-
💭 PETaflop cluster - Justin Garrison
Here's my thought on 💭 PETaflop cluster - Justin Garrison Justin makes the coolest kubernetes clusters wishing I could see it in the flesh at Kubecon. This…
-
💭 Meet Gor | Just Fucking use kubernetes
Here's my thought on 💭 Meet Gor | Just Fucking use kubernetes Sometimes, all you need is a mindset shift, a blocker in your mind that holds you back from…
-
💭 Kubernetes Isn't for You
Here's my thought on 💭 Kubernetes Isn't for You This post feels like it was written by someone who has never tried kubernetes, someone who reads twitter,…
-
just fucking use kubernetes
You want to run containers? JUST FUCKING USE KUBERNETES. "But it’s complicated!" Shut up. Close twitter and fucking do something. Life is complicated. You know what else is complicated? Email. DNS. Life. Kubernetes is the least painful way to orchestrate containers at scale. Docker Compose is for your laptop. Swarm is dead. Nomad is just sad. Systemd units? Get out of here. "But my app is small!" SO IS YOUR AMBITION. You could write a bunch of bash scripts and hope they work on prod. You could S
-
kubernetes node labels
If you need to target a specific k8s node in the cluster, you can use labels. You want to treat your nodes as much like cattle as you can, but sometimes budgets get in the way. You might be like me and just run any free hardware you can get in your cluster, or you might have some large storage or gpu needs that you can't afford to put on every node in the cluster. To use the label in a pod set to the label that you applied.
-
💭 k8s-monitoring-helm/charts/k8s-monitoring/docs/e...
Here's my thought on 💭 k8s-monitoring-helm/charts/k8s-monitoring/docs/examples/privat... k8s-monitoring requires setting imageregistry and pullsecrets twice…
-
💭 Chris Biscardi's Digital Garden
Here's my thought on 💭 Chris Biscardi's Digital Garden Interesting take on kubernetes from a front end perspective. All valid arguments to me, and really the…
-
grafana dashboards as k8s configmap
I'm trying to learn proper logs, monitoring, otel, and grafana. Today I imported a bunch of pre-made k8s dashboards and made a few of my own for specific apps, and it made me want to know how I can turn my own custom dashboards into infrastructure as code. Turns out grafana makes it pretty easy to do this, if you have the grafana dashboard sidecar running. It will pick up any ConfigMap with the grafana_dashboard label and import it. Go to Dashboards -> Pick a Dashboard -> Export -> JSON. image i
-
backup distrobox image
Today I'm upgrading my distrobox, but don't want to end up in a situation where I can't get anything done becauase I work out of my distrobox.
-
💭 Diun
Here's my thought on 💭 Diun Diun, looks like a very interesting tool to monitor for image updates, it does not make any change, it only makes notifications.…
-
💭 Keel
Here's my thought on 💭 Keel Keel looks interesting, I might give it a try as a simple image updater. I'm unsure if it fits my gitops patterns though. I like…
-
Changing k8s Storage Class - Migration Job
I'm setting up longhorn in my homelab, and I ran into an issue where I initially setup some pvcs under longhorn, and later realized that to get longhorn to snapshot and backup I needed to hand edit volumes after the fact or change storage class. I'm all in on gitops so option 1 was not an option. So changing storageclass it is. Now the issue is that you CANNOT mutate storageclass on a provisioned pvc, it is an immutable attribute. Migration Job This migration job will create a new pvc with the n
-
💭 AI workloads on Talos Linux - Sidero Labs
Here's my thought on 💭 AI workloads on Talos Linux - Sidero Labs cool article for setting up talos linux with an nvidia gpu. What a wild world it we are…
-
💭 Why is Kubernetes everywhere? | Kelsey Hightower...
Here's my thought on 💭 Why is Kubernetes everywhere? | Kelsey Hightower - YouTube Kelsey says several times in this interview, you don't need kubernetes. If…
-
💭 poolers.postgresql.cnpg.io CRD metadata.annotati...
Here's my thought on 💭 poolers.postgresql.cnpg.io CRD metadata.annotations Too long ·... I've never seen or needed to use a serversideapply in kubernetes…
-
emoji in headless chrome in docker
I recently noticed that my og images were missing emoji. They were taken using headless chrome in a container. I fixed it by adding an emoji font in the containerfile / dockerfile. Before Here's what they were looking like with broken emoji fonts. image After And now with the fixed emoji font. image I put thought bubbles on my thoughts posts and stars on my github stars posts
-
💭 Keycloak
Here's my thought on 💭 Keycloak Keycloak looks like an interesting way to setup sso. It's part of the cncf so it's got a good backing. I want something better…
-
postiz-file-upload
Today I learned that the docs in postiz are a bit behind, (fantastic docs btw, they are to the point, and cover almost all of what you need). The docs state that you need to include an R2 bucket to handle uploads. This issue shows that more work has been done, one of which is local storage. The compose file they use in the quick start has the required env variables to set this up. looking into my running instance I can see my images there.
-
💭 GitHub - ngalaiko/tree-sitter-go-template: Golan...
Here's my thought on 💭 GitHub - ngalaiko/tree-sitter-go-template: Golang template gra... This setup fixed my nvim syntax highlighting in helm templates. This…
-
slow nfs performance
I'm running a two node k3s cluster at home, I thought I could simply mount an nfs share on each worker node, and essentially have the same storage accross all nodes. I'm already learning why this is not reccommended. screenshot-2025-01-31T21-18-43-543Z.png Slow I've been running some cronjobs and argo workflows on the second node for awhile, these are things that run in the background and I don't care if they take a bit longer to keep my master node freed up for more critical work. I just starte
-
💭 Status | Depot
Here's my thought on 💭 Status | Depot Depot's uptime seems to be great. I definitely hit some issues with it this afternoon 12/24/24 that were not reported. I…
-
💭 Deploy to Fly using a Depot builder
Here's my thought on 💭 Deploy to Fly using a Depot builder Here the integration to depot appears to be opt in using the flag on . This must have changed over…
-
💭 Depot
Here's my thought on 💭 Depot Just learned about depot today ironically because it seems to be down and fly is using them under the hood to do the container…
-
💭 docker context (and an issue to question your sa...
Here's my thought on 💭 docker context (and an issue to question your sanity) | Pype.dev Dang context can really cause you to pull your hair out. Context seems…
-
💭 Add a healthcheck to your FastAPI app | Pype.dev
Here's my thought on 💭 Add a healthcheck to your FastAPI app | Pype.dev Nice example of adding a healthcheck to fastapi, and integrating it with docker. Don't…
-
💭 Changelog on X: "🗣️@dhh on Kubernetes' migration...
Here's my thought on 💭 Changelog on X: "🗣️@dhh on Kubernetes' migration pitch: “Oh, w... switching cloud providers, theres no easy way. K8s was supposed to…
-
💭 Inside Argo: Automating the Future - YouTube
Here's my thought on 💭 Inside Argo: Automating the Future - YouTube This is a really amazing documentary of argocd. I got into k8s pretty late in the game.…
-
💭 Introduction - bootc
Here's my thought on 💭 Introduction - bootc bootc is the underlying technology that enables OS's like bazzite, and Aurora from the uBlue ecosystem. This post…
-
💭 Production-ready Python Docker Containers with u...
Here's my thought on 💭 Production-ready Python Docker Containers with uv Hynek has a sick dockerfile setup for using uv in python projects. This post was a…
-
💭 Cluster API book
Here's my thought on 💭 Cluster API book Cluster API book This post was a thought by Waylon Walker see all my thoughts at https://waylonwalker.com/thoughts
-
💭 distrobox/docs/usage/distrobox-assemble.md at ma...
Here's my thought on 💭 distrobox/docs/usage/distrobox-assemble.md at main · 89luca89/... This page is gold. It lays out all of the distrobox assemble api with…
-
💭 add init hooks and exported bins · WaylonWalker/...
Here's my thought on 💭 add init hooks and exported bins · WaylonWalker/devtainer@2e4c6da Today I learned that you can use init_hooks to access host machine…
-
k3s config after first install
After first setting up a new k3s instance your kubeconfig file will be located in /etc/rancher/k3s/k3s.yaml. You cans use it from here by setting $KUBECONFIG to that file. Or you can copy it to If you have installed k3s on a remote server and need the config on your local machine then you will need to modify the server address to reflect the remote server. only do this if you don't already have a ~/.kube/config file, otherwise copy it to a new file and set your $KUBECONFIG env variable to use it
-
💭 How Fly.io uses Docker (without Docker) - YouTub...
Here's my thought on 💭 How Fly.io uses Docker (without Docker) - YouTube Docker no Docker, what!!! So fly.io uses Dockerfiles to deploy your app, but no…
-
k8s kustomize diff
I've started leaning in on kubernetes kustomize to customize my manifests per deployment per environment. Today I learned that it comes with a diff command. You can enable color diffs by using an external diff provider like colordiff. You might need to install colordiff if you don't already have it. Now I can try out kustomize changes and see the change with kustomize diff.
-
kubectl dash k
Kubernetes ships with a feature called kustomize that allows you to customize your manifests in a declarative way. It's a bit like helm, but easier to use. I…
-
💭 Kustomize: The Best Way to Manage Your Kubernete...
Here's my thought on 💭 Kustomize: The Best Way to Manage Your Kubernetes Configs - Yo... Great intro into kustomize. This helped me get started with…
-
kind cluster
kind is a very useful tool to quickly standup and teardown kubernetes clusters. I use it to run clusters locally. Generally they are short lived clusters for trying, testing, and learning about kubernetes. Kind is Kubernetes in Docker, its very fast to get a new cluster up and running. Other than checking a box in docker desktop it is the easiest way currently to get a cluster up and running. I've used docker desktop for k8s before I really developed on k8s and it was buggy at the time and somet
-
Install sealed-secreats via manifest
Yesterday I realized that I have overlooked the default installation method of the sealed secrets controller for kubernetes-kubeseal this whole time an jumped straight to the helm section. I spun up a quick kind-cluster and had it up quickly. I can't say this is any better or worse than helm as I have never needed to customize the install. According to the docs you can customize it with kustomize or helm.
-
💭 Where DOESN’T curl run with curl BDFL Daniel Ste...
Here's my thought on 💭 Where DOESN’T curl run with curl BDFL Daniel Stenberg (Changel... Love how Daniel just brushed off the number of netflix tv installs as…
-
💭 Releases · stackrox/kube-linter
Here's my thought on 💭 Releases · stackrox/kube-linter A linter for linting kubernetes manifests and help charts. This post was a thought by Waylon Walker see…
-
💭 Episode #323 Best practices for Docker in produc...
Here's my thought on 💭 Episode #323 Best practices for Docker in production - [Talk P... Great listen for anyone interested in productionizing python code…
-
💭 podman requries qemu-system on ubuntu
Here's my thought on 💭 podman requries qemu-system on ubuntu podman requires qemu-system on The fix to this for me was to install qemu-system before podman…
-
💭 argoproj/argo-events: Event-driven Automation Fr...
Here's my thought on 💭 argoproj/argo-events: Event-driven Automation Framework for Ku... Argo events is an event driven automation framework for kubernetes…
-
💭 eraser-dev/eraser: 🧹 Cleaning up images from Kub...
Here's my thought on 💭 eraser-dev/eraser: 🧹 Cleaning up images from Kubernetes nodes This is kinda sick, its a tool to clean up container images in a k8s…
-
💭 Distrobox
Here's my thought on 💭 Distrobox distrobox gives you to run commands on the host. This is handy to get access to host level clis that you probably wouldn't…
-
💭 How to Restart All Pods in a Kubernetes Namespac...
Here's my thought on 💭 How to Restart All Pods in a Kubernetes Namespace | Boot.dev As of kubernetes 1.15 there is an easy way to restart all pods in a…
-
💭 argocd automated sync
Here's my thought on 💭 argocd automated sync This post was a thought by Waylon Walker see all my thoughts at https://waylonwalker.com/thoughts
-
💭 Manual Upgrades | K3s
Here's my thought on 💭 Manual Upgrades | K3s You can give k3s an install channel to install , , or specific versions like . This is handy to make sure that…
-
scheduling cron jobs in kubernetes
For my reader app I am using cronjobs to schedule my a new build and upload to cloudflare pages every hour. In this example I have built a docker image and pushed it to dockerhub. It uses a secret to access cloudflare, and the entrypoint itself does the build and upload.
-
💭 Sealed Secrets
Here's my thought on 💭 Sealed Secrets kubeseal is a pretty simple to get started with way to manage secrets such that they can be stored in a git repo and be…
-
kubernetes kubeseal
In my homelab kubernetes cluster I am using kubeseal to encrypt secrets. I have been using it successfully for a few months now wtih great success. It allows me to commit all of my secrets manifests to git with out risk of leaking secrets. You see kubeseal encrypts your secrets with a private key only stored in your cluster, so only the cluster itself can decrypt them using the kubeseal controller. kubeseal-post.png KubeSeal https://sealed-secrets.netlify.app/ installation Installation happens i
-
kubernetes 6 months in
I stumbled into kubernetes December 2023 when I was looking for a better way to self host applications. I was looking for something that didn't require logging into a server and building and deploying like a cave man. I wanted a smoother experience than docker compose was giving me. https://waylonwalker.com/looking-for-a-heroku-replacement/ This post turned into a list of tools that I have adopted into my k8s workflow, and plan to keep. enjoy. Kompose Kompose is a great tool for gettting going a
-
💭 Configure Liveness, Readiness and Startup Probes...
Here's my thought on 💭 Configure Liveness, Readiness and Startup Probes | Kubernetes What is the difference between health, liveness, readiness, and startup?…
-
💭 docker - Where does the convention of using /hea...
Here's my thought on 💭 docker - Where does the convention of using /healthz for appli... The convention of "z-pages" comes from google and reduces the…
-
💭 jesseduffield/lazydocker: The lazier way to mana...
Here's my thought on 💭 jesseduffield/lazydocker: The lazier way to manage everything ... I've been using this for a few weeks now and it's fantastic. It's…
-
💭 Uptime Kuma
Here's my thought on 💭 Uptime Kuma Uptime kuma is a fantastic self hosted monitoring tool. One docker run command and you are up and running. Once you are in…
-
💭 Kubernetes Secrets in 5 Minutes! - YouTube
Here's my thought on 💭 Kubernetes Secrets in 5 Minutes! - YouTube I am converting my docker compose env secrets over to k8s secrets. This guide was clear and…
-
💭 Waylon Walker 🐍 on X: "Which is more complicated...
Here's my thought on 💭 Waylon Walker 🐍 on X: "Which is more complicated" / X Wow, shocked at these results. All this time I've been told and believed that k8s…
-
💭 Creating k8s jobs with python
Here's my thought on 💭 Creating k8s jobs with python I was looking to add running kubernetes jobs to a python cli I am creating, and I found this solution,…
-
💭 mkimuram/k8sviz: Generate Kubernetes architectur...
Here's my thought on 💭 mkimuram/k8sviz: Generate Kubernetes architecture diagrams fro... This is a sick kubernetes architecture diagran generation tool. Here…
-
💭 Translate a Docker Compose File to Kubernetes Re...
Here's my thought on 💭 Translate a Docker Compose File to Kubernetes Resources | Kube... is a sick cli to convert docker-compose.yml to kubernetes manifest.…
-
💭 Daniel Nashed's Blog
Here's my thought on 💭 Daniel Nashed's Blog Running your own docker registry in one line This post was a thought by Waylon Walker see all my thoughts at…
-
💭 Kubernetes Persistent Volumes with Deployment an...
Here's my thought on 💭 Kubernetes Persistent Volumes with Deployment and StatefulSet Example of how to add a pvc to a deployment. This post was a thought by…
-
💭 Inspect a Kubernetes PersistentVolumeClaim | Fra...
Here's my thought on 💭 Inspect a Kubernetes PersistentVolumeClaim | Frank Sauerburger I was curious to see what was going on inside of my minio object…
-
💭 Can't create Secret in Kubernetes: illegal base6...
Here's my thought on 💭 Can't create Secret in Kubernetes: illegal base64 data at inpu... In order to use k8s secrets manifest you first need to encode the…
-
💭 Can I access k3s using just kubectl (no sudo and...
Here's my thought on 💭 Can I access k3s using just kubectl (no sudo and no k3s comman... Right after installing k3s you are going to need to use to use any…
-
💭 Quick-Start Guide | K3s
Here's my thought on 💭 Quick-Start Guide | K3s I recently spun up k3s in my homelab. I'm trying to offload some work off of my free tier fly.io app in order…
-
💭 How to run pods as systemd services with Podman ...
Here's my thought on 💭 How to run pods as systemd services with Podman | Enable Sysadmin podman comes with a nice command for generating systemd service files…
-
💭 GitHub - wagoodman/dive: A tool for exploring ea...
Here's my thought on 💭 GitHub - wagoodman/dive: A tool for exploring each layer in a ... Really cool tui to inspect docker imaages that runs with docker. This…
-
💭 Relocating the Docker root directory - IBM Docum...
Here's my thought on 💭 Relocating the Docker root directory - IBM Documentation A very straightforward guide to moving your docker data, such as container…
-
💭 Podman - ArchWiki
Here's my thought on 💭 Podman - ArchWiki I kept running into limits in the number of subuid and subgid's I had on my system by default. As always thank the…
-
💭 How to pull from images from docker.io with podm...
Here's my thought on 💭 How to pull from images from docker.io with podman By default podman will not pull images from docker.io and will need setup. This…