Community-Lösung

Baue einen Touchscreen-Kiosk auf dem ZimaBoard 2 mit Docker, X.Org, Chromium und einem lokalen Dashboard

A detailed April 2026 community tutorial for turning a ZimaBoard 2 1664 on ZimaOS 1.5.4 into a fullscreen touchscreen kiosk. The author ran Debian/X.Org/Chromium inside Docker, exposed Intel graphics and udev input, hosted the dashboard with nginx, added a touch-event workaround, and later shared photos of the working 24/7 home-assistant setup.

Diese Quelle ist ein gutes Beispiel für die Verwendung von ZimaOS als Appliance-Host, anstatt die schreibgeschützte Systemebene in eine Desktop-Distribution umwandeln zu wollen. Da ZimaOS kein gewöhnliches apt Umgebung oder integrierten X.Org-Desktop erstellte der Autor den gesamten Kiosk-Stack in Docker: Debian + X.Org + Chromium für die Anzeige sowie einen kleinen nginx-Container für das lokale Dashboard.

Das Ergebnis war ein funktionierender 22-Zoll-Touchscreen-Kiosk, verbunden mit einem ZimaBoard 2 1664. Dies bleibt ein fortgeschrittenes Community-Projekt und ist kein von IceWhale unterstützter Desktopmodus. Es verwendet Host-Netzwerk, direkten Zugriff auf Grafik- und Eingabegeräte sowie einen privilegierten Kioskcontainer. Nutzer sollten daher die Sicherheits- und Gerätezugriffsabwägungen verstehen, bevor sie den Aufbau übernehmen.

Fertiger 22-Zoll-Touchscreen-Kiosk mit Verbindung zu einem ZimaBoard 2 und Anzeige eines benutzerdefinierten Dashboards im Vollbildmodus
Der Autor der Quelle zeigte den fertigen Kiosk als ständig eingeschaltetes Dashboard neben dem Haupt-PC.

Der Kiosk führt einen Desktop-Stack in Docker aus

Das Dockerfile aus der Quelle basiert auf Debian Bookworm Slim und installiert X.Org, libinput, Openbox, Chromium, X11-Hilfsprogramme, Schriftarten und Mesa. Der Host bleibt ZimaOS; die grafische Benutzerumgebung läuft im Container.

Dies ist genau die Art von Workload-Isolierung, die das ZimaOS-Appliance-Modell fördern soll.

Die Intel-GPU wird dem Kioskcontainer zugänglich gemacht

Die Anleitung verwendet X.Orgs modesetting Treiber und übergibt das Intel-DRM-Gerät an den Container. Der Autor stellte ausdrücklich fest, dass die erforderliche Mesa-Unterstützung für den beim ZimaBoard 2 verwendeten N100-Grafikstack Backports von Bookworm erforderte.

Die aktuelle ZimaBoard-2-Hardware verwendet einen Intel N150. Nutzer, die die Anleitung nachbauen, sollten daher die aktuelle Mesa-/X.Org-Unterstützung überprüfen, statt davon auszugehen, dass die historischen Angaben zum N100 identisch sind.

Die Touch-Eingabe erfolgt über die Eingabe-/Udev-Schicht des Hosts

Das Anzeigesignal wurde über HDMI/miniDP übertragen, während der Touchscreen-Controller per USB verbunden war. Die Anleitung untersucht /proc/bus/input/devices, ordnet das richtige Ereignisgerät in X.Org zu und gibt /run/udev damit der Container Eingabegeräte identifizieren kann.

ZimaBoard-2-Kioskaufbau mit Touchscreen-Monitor, Lautsprechern und Desktop-Haupt-PC im selben Home-Assistant-Arbeitsbereich
Der Touchscreen war Teil einer umfassenderen Architektur mit niedrigem Stromverbrauch, bei der Zima online blieb und der leistungsstarke Haupt-PC bis zum Bedarf im Ruhezustand blieb.

Ein separater nginx-Container stellt das Dashboard bereit

Der Quellcode wird ausgeführt nginx:alpine an einem nicht von ZimaOS verwendeten Port (im Beispiel 8888) und bindet die Dashboard-Dateien schreibgeschützt ein. Chromium öffnet diese lokale URL im Kioskmodus.

Die Verwendung eines separaten Webcontainers erleichtert die Aktualisierung der Dashboard-Dateien, ohne den Grafikcontainer neu erstellen zu müssen.

Verwende Port 80 von ZimaOS nicht erneut für das Dashboard

In der Anleitung wird ausdrücklich darauf hingewiesen, dass ZimaOS bereits Port 80 für sein Dashboard verwendet. Wenn Chromium die falsche Seite öffnet, überprüfe den Port des benutzerdefinierten Dashboards und den KIOSK_URL Wert, statt ZimaOS unerwartet zu ändern.

Der Autor fügte eine Workaround für Pointer-Events bei Touch-Taps hinzu

Im Dashboard der Quelle konnte eine geringfügige Bewegung des Fingers verhindern, dass Chromium herkömmliche onclick Handlern. Der Autor ersetzte die Klickverarbeitung durch pointerup plus einen Bewegungsschwellenwert.

Dieses JavaScript ist anwendungsspezifisch. Moderne Weboberflächen, die für Touchbedienung entwickelt wurden, sollten zeiger- und touchfreundliche Steuerelemente bevorzugen, statt Inline- onclick Zeichenfolgen.

Der privilegierte Modus ist der größte Sicherheitskompromiss

Die Quelle startet den Kiosk-Container mit --privileged. Dies gewährt weitreichenden Zugriff auf Geräte und den Host-Kernel und ist wesentlich freizügiger als ein gewöhnlicher Dashboard-Container.

Wenn du den Build reproduzierst, teste zunächst, ob explizite /dev/dri, Eingabegeräte- und udev-Mounts sowie eng begrenzte Berechtigungen sind ausreichend. Belasse das Dashboard in einem vertrauenswürdigen LAN.

Die Quelle verwendet „unless-stopped“ für die automatische Wiederherstellung

Sowohl der nginx- als auch der Kiosk-Container verwenden restart: unless-stopped Verhalten, sodass die Anzeige nach einem Neustart von ZimaOS wieder angezeigt wird. Speichere die Dockerfile, die X.Org-Konfiguration, den Einstiegspunkt und das Dashboard unter persistentem /DATA Speicher.

Das aktuelle ZimaOS kann dies mit Compose reproduzierbarer paketieren

Das aktuelle ZimaOS unterstützt den Import von Standard-Docker-Compose-/YAML-Dateien. Statt mehrere lange docker run Befehle ermöglichen es fortgeschrittenen Benutzern, beide Dienste, Neustartrichtlinien, Geräte, Volumes und Netzwerke in einer geprüften Compose-Datei festzulegen.

Verwende das aktuelle ZimaOS-Compose-Modell.

Großer, individuell konfigurierter Desktop-PC, der zusammen mit dem ständig eingeschalteten ZimaBoard-2-Kiosk und dem Home-Assistant-Hub verwendet wird
Das umfassendere Design des Autors hält das ZimaBoard 2 rund um die Uhr online und weckt den stromhungrigen Haupt-PC nur für anspruchsvollere Aufgaben auf.

FAQ zum Touchscreen-Kiosk

Müssen apt oder eine Desktop-Umgebung auf dem ZimaOS-Host installiert werden?

Nein. Die Quelle behält X.Org, Openbox, Mesa und Chromium absichtlich innerhalb von Docker.

Ist dies ein offizieller Desktop-Modus von ZimaOS?

Nein. Es handelt sich um einen Community-Build, den IceWhale mit Namensnennung teilen durfte.

Warum birgt der Kiosk-Container im Vergleich zu einer normalen App ein hohes Risiko?

Die Quelle versetzt den Container in den privilegierten Modus und gewährt ihm direkten Zugriff auf Grafik und Eingabegeräte, wodurch die Docker-Isolierung verringert wird.