# Beispiel, kein fertiger Betrieb. Jeder Pfad hier gehört angepasst. # # Übernommen aus einem laufenden Plex-Container auf einem UGREEN-NAS — die # Form ist bewährt, die Werte sind es nur dort. services: flaro: # Die Registry des eigenen Gitea. Wer woanders veröffentlicht, trägt # hier etwas anderes ein — siehe docs/NAS-EINRICHTEN.md. image: git.scarriffle.com/scarriffle/flaro:latest container_name: flaro restart: unless-stopped ports: - "8080:8080" environment: - TZ=Europe/Zurich # Plakate, Hintergründe und NFO-Dateien neben den Film legen. # # **Standardmässig aus.** Dafür muss die Medieneinhängung unten ohne # `:ro` stehen — und damit kann der Server dort im Grundsatz schreiben. # Dass er nur Beiwerk anlegt, hängt an einer Erlaubnisliste im Code # (`SidecarNames`): poster.jpg, fanart.jpg, logo.png, movie.nfo, # tvshow.nfo, je Folge eine NFO und ein Standbild. Alles andere lehnt er # ab, auch Mediendateien — die werden nie geändert, umbenannt oder # gelöscht. # # Der Gewinn: dein Bestand wird tragbar. Ein Umzug, ein Neuaufbau der # Datenbank oder ein zweiter Server finden Zuordnungen und Bilder wieder. - FLARO_WRITE_SIDECARS=true # Womit das Bild gerechnet wird, wenn eine Wiedergabe umkodiert werden # muss — weil der Browser den Codec nicht kennt oder eine kleinere # Auflösung gewählt wurde. # # auto prüft, ob /dev/dri/renderD128 da ist, und nimmt sonst # den Hauptprozessor. Das ist die Voreinstellung. # vaapi erzwingt die Grafikeinheit. Fehlt sie, scheitert die # Wiedergabe — nützlich, um zu prüfen, ob sie wirklich greift. # none immer in Software. Langsam, aber überall gleich. # # **Zum blossen Umpacken wird nichts davon gebraucht.** Eine MKV mit # H.264 nach MP4 zu schachteln kostet den Server fast nichts. # - FLARO_HWACCEL=auto # Wem die Dateien auf dem Wirt gehören. 1000:1000 ist die Voreinstellung # im Image; wer andere Kennungen hat, trägt sie hier ein — `id -u` und # `id -g` auf dem Wirt sagen, welche. user: "1000:1000" volumes: # Datenbank und Einstellungen. **Das Einzige, was gesichert werden muss.** - /volume4/CRITICAL/Docker/Flaro/config:/config # Bilder und Zwischenstände. Darf verlorengehen, baut sich neu auf. - /volume4/CRITICAL/Docker/Flaro/cache:/cache # Kratzplatz fürs Umrechnen. Am besten auf eine SSD und nicht dorthin, # wo die Medien liegen — hier wird viel und kurzlebig geschrieben. - /volume1/Transcode:/transcode # Die Medien. # # **Ohne `:ro`, weil FLARO_WRITE_SIDECARS oben an ist.** Wer das nicht # will, setzt die Variable auf `false` und hängt wieder mit `:ro` ein — # dann bleiben Bilder und Metadaten nur in Flaros Cache, und der Bestand # ist gegen jeden Zugriff des Servers geschützt. # # Transcode-Zwischenstände kommen hier **nie** her; die liegen auf dem # eigenen Volume darüber. # # Was hier eingehängt wird, ist der Pfad, den du später in der Oberfläche # als Bibliothek anlegst — also `/media`, nicht `/volume4/MYFLIX`. - /volume4/MYFLIX:/media # Hardware fürs Umrechnen. Intel wie AMD laufen über VAAPI an derselben # Stelle. Fehlt die Zeile, rechnet Flaro in Software — langsamer, aber es # läuft. Zum blossen Umpacken wird sie ohnehin nicht gebraucht. devices: - /dev/dri:/dev/dri # Die Gesundheitsprüfung steckt im Image und fragt /health ab — hier # braucht es sie nicht noch einmal. Die alte Fassung prüfte `dotnet # --info` und sagte damit nur, dass die Laufzeit da ist; das war sie auch, # während der Server noch migrierte.