Back to Blog

Sunset newwaves.dev

Auf dieser Website war zuletzt wenig los. Nach etwas längerer Inaktivität habe ich mich entschieden, meinen Fokus auf ein neues Projekt zu legen. Dafür brauchte ich einen Weg, die aktuelle Website sauber zu sichern und Domain samt VPS anschließend für das neue Projekt zu verwenden. Den Anreiz, das endlich anzugehen, hat der Release von Anthropics Fable 5 geliefert.

Wenn du das hier auf newwaves.dev liest, ist es der letzte Beitrag unter dieser Adresse. Wenn du es auf old.newwaves.dev liest, hat der Plan funktioniert. Die Seite verschwindet nämlich nicht, sie zieht nur eine Tür weiter.

Warum überhaupt Sunset

Die Seite ist seit dem 01.05.2026 live, der letzte Commit war Ende Mai. Seitdem habe ich hier nicht mehr aktiv gebaut. Der VPS wird für den Wechsel nicht neu aufgesetzt, er bekommt nur neue Aufgaben.

Geplant habe ich das Ganze in einer Session mit Claude Code, als erster echter Testlauf für Fable 5 an meinem eigenen Setup.

Bestandsaufnahme auf dem VPS

Bevor irgendetwas gesichert oder gelöscht wurde, haben wir den Server durchleuchtet:

  • Der Live-Stand ist identisch mit dem Repo. Mein Webroot ist ein Git-Clone, ein git status auf dem Server zeigte einen sauberen working tree und denselben Commit wie auf GitHub. Es wurde nie an Git vorbei gearbeitet.
  • Deploy-Scripte, eigene Cronjobs oder zusätzliche Dienste gibt es nicht. Der Server war erfreulich aufgeräumt, nur Ubuntu-Standard plus certbot-Timer.
  • Den Namen des NGINX Server Blocks haben wir notiert, der wird später beim Umschalten und im Backup gebraucht.

Der Check hat sich gelohnt. Danach war klar, dass das Backup nur das Repo, die Server-Konfiguration und die Zertifikate abdecken muss.

Backup an drei Orten

Erster Baustein: ein Git-Tag, der den Stand vor dem Umbau für immer auffindbar macht, egal was später im Repo passiert.

git tag -a v1-sunset-2026-07 -m "Letzter Live-Stand vor Sunsetting"
git push origin v1-sunset-2026-07

Zweiter Baustein: ein tar-Archiv auf dem VPS, das neben dem Webroot auch die NGINX-Konfiguration und das Let's-Encrypt-Verzeichnis enthält. Also genau die Teile, die nicht im Repo stehen. Dazu eine SHA256-Checksumme.

sudo tar -czf /var/backups/newwaves-website/newwaves-sunset-2026-07.tar.gz \
    /var/www/newwaves.dev \
    /etc/nginx/nginx.conf \
    /etc/nginx/sites-available \
    /etc/nginx/sites-enabled \
    /etc/letsencrypt
sudo sha256sum newwaves-sunset-2026-07.tar.gz > newwaves-sunset-2026-07.sha256

Dritter Baustein: das Archiv per SFTP auf meinen Rechner gezogen und die Checksumme lokal mit Get-FileHash verglichen. Identisch, also kam beim Transfer kein Bit abhanden. Damit liegt der komplette Stand auf GitHub, auf dem VPS und lokal. Sobald der Umzug durch ist, wiederhole ich das Backup noch einmal, damit auch der finale Zustand mit dem neuen Server Block gesichert ist.

Nebenbei sind zwei alte Backup-Ordner aus der SFTP-Ära vom Server geflogen. Deren Inhalt steckt seit dem Initial Commit vollständig in der Git-History, sie waren nur noch Ballast.

old.newwaves.dev statt offline

Der ursprüngliche Plan war, die Seite komplett offline zu nehmen. Beim Durchdenken wurde daraus etwas Besseres. NGINX kann problemlos mehrere Websites parallel ausliefern, jede mit ihrem eigenen Server Block. Der Ordner /var/www/newwaves.dev bleibt einfach liegen und bekommt einen zweiten Namen an der Haustür:

  • old.newwaves.dev zeigt auf die bestehende Seite, genau diese hier.
  • newwaves.dev wird frei und gehört künftig dem neuen Projekt.

Das Beste daran: Mein Workflow ändert sich null. Lokal bearbeiten, committen, pushen, auf dem Server git pull. Dem Git-Deploy ist es komplett egal, unter welchem Domainnamen NGINX die Dateien ausliefert. Ich kann diese Seite also weiter mit Beiträgen füttern, wann immer ich Lust habe. Streng genommen ist es damit kein Archiv, sondern ein Umzug in die zweite Reihe.

Die Rückfahrkarte

Falls die Seite irgendwann zurück auf die Hauptdomain soll, ist das dank der Vorbereitung ein Zweizeiler. Der Server Block liegt weiter in sites-available, es fehlt nur der Symlink:

sudo ln -s /etc/nginx/sites-available/newwaves.dev /etc/nginx/sites-enabled/
sudo nginx -t && sudo systemctl reload nginx

Genau das war der Anspruch an diesen Sunset. Nichts wird zerstört, alles ist dokumentiert, und jede Entscheidung lässt sich rückgängig machen.

Learning in Public geht weiter

Die Uptime-Anzeige auf der Startseite zählt übrigens einfach weiter, und das darf sie auch. Die Seite lebt ja, nur eben unter neuem Namen. Was auf newwaves.dev entsteht, ist Stoff für kommende Beiträge.