Blog Post: Kube-1
This commit is contained in:
parent
ce4db10a1d
commit
06747551fa
2 changed files with 72 additions and 0 deletions
72
src/routes/(blog-article)/kube-1/+page.md
Normal file
72
src/routes/(blog-article)/kube-1/+page.md
Normal file
|
@ -0,0 +1,72 @@
|
||||||
|
---
|
||||||
|
slug: kube-1
|
||||||
|
title: "My Journy to Kubernetes land #1"
|
||||||
|
date: 2025-01-08T12:00:25.350Z
|
||||||
|
excerpt: Kuberentes
|
||||||
|
coverImage: /images/posts/kube.jpeg
|
||||||
|
tags:
|
||||||
|
- homelab
|
||||||
|
- kubernetes
|
||||||
|
- media server
|
||||||
|
---
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import CodeBlock from "$lib/components/molecules/CodeBlock.svelte";
|
||||||
|
</script>
|
||||||
|
|
||||||
|
# The Kuberenetes way
|
||||||
|
The love story started with a single docker container. In this posts I will try to go through how I started, the process and how I ended up with this setup. as much as I could since it was never a straight path 🐋
|
||||||
|
|
||||||
|
### The Discovery
|
||||||
|
Years ago it all started when I discovered docker containers. I remember I needed a solution to cache downloaded games so I dont consume alot of bandwith and resources. The main goal was to make it faster. I downloaded Game A in PC#1. I redownload the same game in PC#2 but this time it will fetch it from the local cache server. <br/> <br/>
|
||||||
|
I had no clue what docker was. Yes you heard that right. Not a single clue! I found a project called lancache. Im comfortable with computers so I thought lets give it a go. So I did.
|
||||||
|
|
||||||
|
### The meetup
|
||||||
|
I had a Desktop PC with 32GB Ram and intel i5. and about 6TB for storage. I thought well this gonna be a server "lets just install linux server on it, and we will go from there" I barley knew how to cd and ls. Today my main daily driver is linux. funny how things work 🤣. Anyways I installed ubuntu server. Followed the instructions on running lancache from github and the docs. Aaaand it was running successfully! I was happy. its doing what its inteded to do. I have **Orchestrated** this I thought. <br><br>
|
||||||
|
One of my friends was my tech guy for the tech guy if you know what I mean. I myself was the tech guy for everyone else. But he was my tech guy! I was proudly showing him the setup. He said and I quote "Oh you are running it in a docker container" I had no clue what was that. I just followed the instructions I knew docker was involved because I wrote some commands started with docker. However I had no clue what it was. He is software engineer, Backend specifically not a devop so he knew what is it just not fully. I told him yeah "uhh yeah docker!". What the hell is that? where can I see the cached files why everything looks gibbresh! He proceeded with explainging docker to me. "its basically a small virtual machine running ubuntu in your ubuntu except it shares the kerneal so its lighter than a VM". <br>
|
||||||
|
![noclue](https://images.gr-assets.com/hostedimages/1395589252ra/9017005.gif)
|
||||||
|
He lost me at kernal. But I kind of understood the idea. I did my own search. Found
|
||||||
|
another project called jellyfin where you can watch movies and series streamed locally! At first I wasnt excited for the project per se. I just wanted to go through the journy of running it. So I did what I do best. Google it, Follow this instruction I found in a blog post. I spent few hours and it was running! on the same server that i was using for lancache. however all of this is not at home **yet**.
|
||||||
|
|
||||||
|
### The Compose
|
||||||
|
This little project intoduced me to docker compose. I dont exactly remember when but its around this timeline. After I tested around thats its working I got excited with the project. It was amazing! I looked for a way to securly connect to it from home. And stumbled on tailscale, I installed it on the server. So now I got a tunnel I could connect to it from home! I was excited. I shared it with my family! Installed tailscale and jellyfin TV Client on all TVs. its great! but It was still just a little project. proof of concept that it works how I **orchestrated** it. I slowly began to get addicted to this. I could command a machine to do exactly what I want when I want automatically.
|
||||||
|
|
||||||
|
### The Orchestra
|
||||||
|
|
||||||
|
##### Hardware
|
||||||
|
After that I was using it as is. tailscale and client. I myself wasnt using it much at first. I noticed my wife and my little brother was using it almost daily! I thought 💡 "Hey, why dont I just do the whole thing here locally?" At that point I didn't even knew "Homelab" was an actual term. So I did. But first! we need hardware dont we. <br/><br/>
|
||||||
|
I had an old desktop pc it was missing some components. I know that on of my friends got me covered he is PC componenets hoarder big time. I gave him a call he was happy to get rid of it. everytime I needed sata cable or whatever I would give him a call first see if its available in his *store* 🤣. Extra points for beign a neighbour as well.
|
||||||
|
|
||||||
|
##### Software
|
||||||
|
Okay, I got my hardware now. Its mix and match from old parts: <br>
|
||||||
|
|
||||||
|
- Ram 8GB Currenlty (16GB)
|
||||||
|
- AMD Ryzen 7 1800X (16) @ 3.600GHz
|
||||||
|
- And some old GTX 280 Nvidia I think Currently (NVIDIA GeForce GTX 1080 Ti)
|
||||||
|
|
||||||
|
Great! lets get that ubuntu server on it! This is where I was starting to get comfortable with docker compose. Not so comfortable just getting started. I began on getting the stack passing the volumes here and there. Slowly and surely getting how things works. Its not a straight line from here to where I am now. <br/><br/>
|
||||||
|
Finally the stack is working locally! To the users who are just 2 now. nothing much changed. except they dont need to run tailscale now! <br>
|
||||||
|
|
||||||
|
<CodeBlock lang="🐪">
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
- Jellyfin : The media server
|
||||||
|
- Jellyseer : Requesting new media
|
||||||
|
- Sonarr : Series tracker
|
||||||
|
- Radarr : Movies tracker
|
||||||
|
- Transmission : Download client
|
||||||
|
- Jackett : Proxy server
|
||||||
|
```
|
||||||
|
</CodeBlock>
|
||||||
|
|
||||||
|
Fast forward configuring Caddy and sharing these services with friends and family. Currently around 60 users ☃️
|
||||||
|
|
||||||
|
And this is where I started my real journy into Dockers, Containers, Homelab, Selfhosting as Hobby and eventually Devops, Kubernetes, and CI/CD.
|
||||||
|
|
||||||
|
we will get into all of that in another blog post since this is getting long 🥱
|
||||||
|
for now if you are intersted you can see some of my CI/CD 👇🏼
|
||||||
|
|
||||||
|
[Git with CI/CD Repos](https://git.askar.tv/nomad)
|
||||||
|
|
||||||
|
|
||||||
|
|
BIN
static/images/posts/kube.jpeg
Normal file
BIN
static/images/posts/kube.jpeg
Normal file
Binary file not shown.
After Width: | Height: | Size: 56 KiB |
Loading…
Reference in a new issue