Fallstudie / Bereitstellungssystem

aktiv

Media-Stack-Distribution

Ein privates Deployment-Paket, das eigene Medienautomatisierung bewahrt und gleichzeitig Geheimnisse sowie Laufzeitdaten ausserhalb von Git hält.

  • Bash
  • Python
  • SQLite
  • Docker Compose
  • systemd
  • SOPS
  • CSS

Die Distribution ist die auslieferbare Hälfte des VPS-Wiederaufbausystems. Der Infrastruktur-Blueprint beschreibt den Host; dieses Repository bewahrt die exakten Skripte, Service-Units, die Compose-Struktur, verschlüsselte Konfiguration und Audit-Logik, die zur Reproduktion der Medienplattform nötig sind.

Trennung der Verantwortlichkeiten

  • Implementierungsdateien werden versioniert und mit Prüfsummen versehen
  • betriebliche Geheimnisse werden für eigene Wiederherstellungsidentitäten verschlüsselt
  • Laufzeitdatenbanken und Medien gelangen nie in Git
  • das Deployment beginnt mit einer Bestandsaufnahme und einem Probelauf
  • die Speicheranbindung ist eine getrennte, ausdrücklich bestätigte Phase

Weshalb exakte Bewahrung wichtig ist

Kleine Wartungsskripte sammeln echtes Betriebswissen an: wie Fehler gedämpft werden, welche Artefakte in Quarantäne kommen und wie eine sichere Wiederherstellung aussieht. Diese Skripte mit ihrer Herkunft zu bewahren ist zuverlässiger, als eine spätere Sitzung ihre Funktionsweise aus einer Prosabeschreibung ableiten zu lassen.

Beziehung zur Plattform

Die Seite zur selbst gehosteten Medienplattform erklärt den sichtbaren Ablauf. Diese Fallstudie zeigt, wie dieser Ablauf rekonstruierbar wird, ohne private Konfiguration in öffentliche Dokumentation zu verwandeln.

Getestete Weiterentwicklung der Aufnahme

Bewahrung bedeutet nicht, einen bekannten Klassifizierungsfehler dauerhaft einzufrieren. Die einfache manuelle Aufnahme erkannte ursprünglich nur ausdrückliche S01E01-Dateinamen. Anime-Episoden im Release-Stil wie Serie - 01 [Tags] fielen deshalb in den Filmpfad und erschienen als voneinander unabhängige Karten.

Die aktive Revision verarbeitet nun standardmässiges S01E01, alternatives 1x01 und eine konservative, durch Bindestrich getrennte Anime-Nummer. Erkannte Episoden werden als shows/Serie/Season 01/Serie - S01E01.strm veröffentlicht. Numerische Filmfortsetzungen ohne diese Grenze sowie vierstellige Jahreszahlen bleiben Filme. Fünf gezielte Regressionstests decken die akzeptierten Formen und diese Grenzen gegen Fehlklassifizierungen ab.

Die Auslieferung folgte der Wiederherstellungsdisziplin des Repositorys: den Live-Dienst und die betroffenen STRM-/Sidecar-Paare sichern, genau ein durch Prüfsumme belegtes Skript ausliefern, die Klassifizierung auf dem Host prüfen, nur das bekannte betroffene Release migrieren, einen Jellyfin-Scan auslösen und eine eng begrenzte Rollback-Kopie behalten. Neue Aufnahmen profitieren automatisch; bestehende mehrdeutige Medien werden nicht stillschweigend umgeschrieben.

Additive Medienbibliothek v2

Der aktuelle Repository-Stand stellt zusätzlich einen abgesicherten v2-Pfad bereit, ohne den einfachen v1-Kompatibilitätsablauf zu ersetzen. Er führt Folgendes ein:

  • opake private Resolver-URLs in erzeugten Stream-Einträgen anstelle signierter Anbieterlinks sowie eine dauerhafte Prüfliste für mehrdeutige Medien
  • eine atomare kanonische Bibliotheksansicht, die das beste abspielbare Duplikat auswählt und manueller Kuratierung nur innerhalb derselben Qualitätsstufe einen kleinen Vorrang gibt
  • eine optionale, ausfallsichere Prüfung unterstützter, entfernt gespeicherter Archiv-Sätze, ohne das Archiv oder extrahierte Video dauerhaft zu speichern
  • Quarantäne für fehlgeschlagene automatisierte Streams anstelle einer Neustartschleife

Für einen bereits laufenden Host beginnt das v2-Upgrade mit einem Probelauf, wird durch einen Snapshot abgesichert, ist auf freigegebene Ergänzungen beschränkt und lässt wiederkehrende Aufgaben deaktiviert, bis ausdrückliche Abnahmeprüfungen bestanden sind. Wiedergabetests für Bereichsabrufe und Fortsetzung, Katalogvalidierung, kontrollierte Wiederherstellung des Benutzerzustands und deterministisches Rollback halten die Änderung beobachtbar und reversibel.

Die öffentliche Fallstudie unterscheidet die bereitstellbare v2-Fähigkeit von der kleineren v1-Aufnahmekorrektur, die auf dem aktiven Host geprüft wurde.

Reversible Jellyfin-Darstellung

Das Repository bewahrt ausserdem ein optionales Crimsonvariable-Theme für Jellyfin Web. Über Jellyfins Einstellung für Custom CSS wendet es die festgelegte Farbpalette, den Monospace-Charakter, zurückhaltende Oberflächen und das eigene Markenzeichen an. Es verbirgt weder Steuerelemente der Anwendung noch verändert es Bibliothekslayout, Wiedergabe, Serverkonfiguration oder Medienpfade.

Das Theme importiert keine Stylesheets oder Tracking-Dienste von Dritten. Wenn das Custom-CSS-Feld geleert wird, erscheint wieder die unveränderte Oberfläche. Die Begleitnotizen definieren ausserdem die Browser-, Mobil-, Barrierefreiheits-, Wiedergabesteuerungs- und Upgrade-Prüfungen, die nach einer Aktualisierung von Jellyfin Web vor der weiteren Verwendung erforderlich sind.