Meine Statusseite - Hosting und Deployment via GitHub
Heute folgt der letzte Teil meiner kleinen Newssammlung rund um meine Boehrsi.de Statusseite. Denn sobald die eigentliche Seite erstellt ist, geht es ans Hosting und Deployment. Ich habe bekanntlich einen eigenen Server zur Hand, aber Hosting auf diesem macht für eine Statusseite offensichtlich wenig Sinn. Denn wenn der Server, für welchen die Seite den Status anzeigen soll, offline ist, dann wird die Seite natürlich auch offline sein. Ich entschied mich basierend auf meinen Erfahrungen mit GitHub, für eben selbige Plattform fürs Hosting und Deployment. Dort war ich wie bereits erwähnt durchaus glücklich wie umfangreich die Auswahl an vorhandenen Deployment-Workflows ist und auch das Hosting selbst ist sehr unkompliziert.
via Youtube ansehen
Die GitHub Actions genannten Abläufe nehmen euch viele Aufgaben ab und erlauben es sich auf die eigentliche Umsetzung eurer Ideen zu fokussieren. Ich stützte mich direkt auf die vorhandenen Actions für GitHub Pages und Hugo open_in_new, denn auf diese Art konnte ich mit nur 30 Zeilen Konfiguration (siehe GitHub open_in_new) und extrem wenig weiteren Anpassungen das eigentliche Deployment automatisieren. Jeder Push auf meinen main
Branch baut die Seite neu und aktualisiert so den Inhalt.
Sofern nötig könnt ihr die Hugo Version, den Branch und diverse weitere Dinge konfigurieren. Für meinen Fall reichte die Standardkonfiguration aber quasi aus. Die Action liefert Änderungen am Layout oder Content direkt auf dem gh-pages
Branch aus. Dieser Branch dient als Basis für das Hosting.
via Youtube ansehen
Das Hosting selbst ist umso einfacher, denn ihr könnt einfach die Einstellungen eures Projekts öffnen und findet unter dem ersten Reiter den GitHub Pages Bereich. Wählt hier den Branch und den Ordner welcher genutzt werden soll und schon kann es losgehen. Normalerweise sind GitHub Pages Seiten über entsprechende Subdomains der github.com Domain erreichbar, dies lässt sich allerdings anpassen. Ebenfalls in den Settings des Repositories kann eine komplett eigene Domain hinterlegt werden, welche dann natürlich auch auf DNS Seite bei eurem Anbieter konfiguriert werden muss open_in_new. Eine eigene Domain sieht natürlich hübscher aus und da das Ganze nicht aufwendig ist, stelle ich meine Statusseite unter status.boehrsi.de open_in_new zur Verfügung. Ich aktivierte ebenfalls das erzwingen von HTTPS, denn im Jahre 2021 sollte eigentlich fast keine Website mehr ohne HTTPS laufen.
Mit diesen simplen Schritten war ich bereits am Ziel. Sofern es übrigens Probleme gibt könnt ihr im jeweiligen Projekt den Actions Tab bemühen und dort Log Output und Debugging Informationen erhalten. Generell empfiehlt es sich übrigens hin und wieder auch nach laufenden Automatisierungslösungen zu schauen, denn ein Versionsupdate hier oder eine Optimierung da schaden meist nicht.