diff --git a/src/content/blog/er-mit-homelab-opdateret.md b/src/content/blog/er-mit-homelab-opdateret.md new file mode 100644 index 0000000..e3db34e --- /dev/null +++ b/src/content/blog/er-mit-homelab-opdateret.md @@ -0,0 +1,87 @@ +--- +title: "Er mit homelab egentlig opdateret?" +description: "Jeg byggede et lille overblik der selv kigger ind i alle mine containere og fortæller mig hvad der er bagud, og hvad der snart holder op med at få opdateringer." +date: 2026-06-13 +tags: [proxmox, homelab, lxc, selfhost] +draft: false +--- + +Det startede som det altid gør.. med en lille irritation. Jeg ville tjekke om min +Nextcloud var opdateret, og for at finde ud af det skulle jeg logge ind, klikke mig +ned i indstillinger, og så gentage den øvelse for de næste mange tjenester jeg har +kørende. På et tidspunkt indser man at man hellere vil have ét sted der bare siger +det hele på én gang. + +Så det byggede jeg ind i min forside. En lille drift-side der for hver tjeneste +viser hvilken version den kører, hvad den nyeste er, og om der er noget at opdatere. +Det lød simpelt da jeg begyndte. Det var det ikke. + +## Portalen kan ikke se ind i containerne + +Det første jeg gik lige i med åbne øjne var at portalen kører i sin egen LXC, og +derinde fra kan den ikke bare spørge de andre containere hvad de har installeret. +Den aner ikke at der står en Sonarr ovre i én container og en MariaDB i en anden. +Den sidder i sin egen lille kasse og kan ikke se ud. + +Løsningen blev en lille samler der kører på selve Proxmox-værten, for derude har jeg +fat i det hele gennem pct og qm. Den går rundt og spørger hver enkelt container pænt +om dens version, og det sjove er hvor forskelligt de svarer. Emby har et endpoint man +bare kan spørge. Servarr-apperne vil have en nøgle først, så jeg fisker den ud af +deres config og spørger bagefter. qBittorrent og MariaDB siger det bare hvis man +kører dem med `--version`. Comentario gemmer sig i et Docker-image, så den starter +jeg lige for at høre efter. Og Proxmox selv spørger jeg bare direkte med `pveversion`. + +Hver af dem blev en lille funktion for sig, og det fine er at den næste tjeneste bare +bliver én linje mere. Det skal være kedeligt at udvide.. det er sådan man ved at noget +er bygget rigtigt. + +## Hvad er egentlig den nyeste? + +At vide hvad jeg kører er den ene halvdel. At vide hvad der er nyeste er en helt anden, +og den var sværere end jeg regnede med. De fleste af mine ting ligger på GitHub, så dér +henter jeg bare seneste udgivelse. Men ikke alle vil være med på den. Comentario bor på +GitLab, min Gitea-runner ligger på gitea.com, og min Overleaf-fork laver slet ikke +udgivelser, den tagger bare i mit eget Gitea. Så samleren måtte lære at snakke med fire +forskellige steder for at få det fulde billede. + +Og så holdt GitHub pludselig op med at svare. Det viste sig at man uden login kun må +lave 60 opslag i timen, og dem havde jeg selvfølgelig brændt af mens jeg sad og +testede. Nu gemmer den den sidst kendte version på disk, så et rate-limit eller en +genstart aldrig tømmer kolonnen igen. Den opdaterer kun når der faktisk kommer et nyt +svar. En lille nøgle løste resten. + +## Det vigtigste er det der dør + +Den del jeg er gladest for er ikke opdateringerne, men nærmest det modsatte. Det er +fint at vide at der findes en nyere version, men det er vigtigere at vide om noget snart +holder op med at få sikkerhedsrettelser. Der findes en virkelig nyttig lille tjeneste +der hedder endoflife.date, og den ved præcis hvornår hver version af Proxmox, Nextcloud, +MariaDB og en håndfuld andre løber tør for support. Så jeg slår min kørende version op +derovre og får en dato tilbage. + +Lige nu lyser to felter gult. Min Proxmox 8 holder sidst i august, og min Nextcloud 32 +i slutningen af september. Og fordi det ikke hjælper bare at vide at noget brænder, +viser siden også hvor brandtrappen er.. den næste store version man skal hoppe til, med +den nyeste udgivelse i den. Proxmox 9, Nextcloud 33. Så jeg ved ikke bare at jeg skal +videre, men også hvorhen. + +## Firefly der var væk + +Det bedste øjeblik var faktisk en fejl der ikke var en fejl. Min Firefly III, hvor jeg +har min økonomi, stod bare og manglede en version, og jeg ledte og ledte efter noget +galt i koden. Der var ikke noget galt i koden. Containeren var slukket. Den havde stået +slukket et godt stykke tid uden at jeg havde lagt mærke til det, og det var dashboardet +der fandt det, ikke mig. Det er nok den bedste anbefaling projektet kan få.. det +fortæller mig ting jeg ikke vidste jeg ikke vidste. + +## Hvad jeg sidder med nu + +Siden henter sig selv hvert 10. sekund, markerer opdateringer og det der er ved at +udløbe, og på telefonen folder tabellen sig ud til pæne kort så jeg kan stå ved +køkkenbordet og se at jeg har et par ting at se til. Jeg kan filtrere på om en +opdatering er stor eller lille, og på hvad der er tæt på at dø. + +Jeg troede det skulle tage en aften. Det tog selvfølgelig længere. Men nu kan jeg se +hele molevitten ét sted uden at logge ind nogen steder, og det er præcis den slags +dovne luksus et homelab skal give. Det bliver aldrig rigtig færdigt, for der kommer +altid en tjeneste mere.. men det er jo også pointen. Den næste er bare en linje mere.