Ich hab einen neuen. Der heißt Hugo.
Als das alles hier angefangen hat 2013 war dieses Blog ein klassisches Wordpress. Kurz darauf habe ich dann meine Liebe zum selfhosting entdeckt und den ganzen Schmand in ein leichttgewichtiges php framework (wenn man das so nennen darf) umgeschrieben. Das war 2014. Immerhin lief der Spaß dann performant auf einem Raspberry Pi 1.
Irgendwann später habe ich dann die statischen Bilder noch auf Cloudfront ausgelagert, da static content serving im Heimbetrieb einfach nicht so dolle schnell für die Nutzer ist. Mittlerweile war das ein Hyydra aus einem minmalen PHP Framework, einem aws-s3-upload-script und unzähligen Nginx rewrite rules.
Es ist 2017. Ich probiere neue Hardware aus und migriere den ganzen Bumms auf einen Raspberry 2 Model B. Der Server läuft in diesem Moment immernoch, sodass ich nachschauen kann.
root@webserver:~# dumpe2fs $(mount | grep 'on \/ ' | awk '{print $1}') | grep 'Filesystem created:'
dumpe2fs 1.42.13 (17-May-2015)
Filesystem created: Sat Feb 11 19:57:49 2017Irgendwie ist das Kontrukt auch garnicht mehr so einfach und leichttgewichtig wie mal gedacht. Also schaut man hin und wieder mal was man da jetzt neues und einfacheres draus machen kann. Mittlerweile spiele ich beruflich nur noch mit Kubernetes rum und bastel natürlich zu Hause auch an einem Mini Cluster. Der alte Server bleibt erstmal da stehen und wird über ingress-nginx proxy pass rules weiter bespaßt.
Mittlerweile schaue ich regelmäßig mit welchem Framework ich die selbstgebaute Hydra ablösen will. 2020 starten die ersten Versuche die Pfadstruktur mit Hugo zu konfigurieren. Irgendwie komme ich aber nie so richtig dazu den eigentlichen Blog Inhalt zu migrieren und das ganze schläft bestimmt 5 mal wieder ein.
Fast Forward 2025. Ich krame im letzten Stand und wundere mich warum ich nicht weiter gemacht habe. Ist doch fast fertig. Der Content wird mit ein bisschen bash, jq und sed in hugo files migriert. Einige Artikel und Kategorienamen werden händisch korrigiert. Ein bisschen CSS hier, ein bisschen Dockerfile da, eine Prise nginx rewrite rules (offensichtlich kann ich nicht ohne) und voila der Blog ist mit Hugo gebaut und als Container Artefakt in die Cluster eigene Registry gepushed.
Aber warum das ganze? Ich kann community driven themes verwenden die auf allen Geräte skalieren. Der Blog ist komplett gerendert. Das performt deutlich besser da zur Laufzeit nichts mehr interpretiert werden muss. Und es bietet auch kaum noch Angriffsfläche.
Jetzt läuft diese Website seit 12 Jahren und das ist eigentlich viel zu cool, um damit aufzuhören.
Weiter gehts hier demnächst mit einem kleinem Helferchen für Filmfans, dass ich schon 2019 gebaut habe. Stay tuned.