Den här källan är ett tydligt exempel på att använda ZimaOS som värd för en appliance i stället för att försöka göra dess skrivskyddade systemlager till en skrivbordsdistribution. Eftersom ZimaOS saknar normal apt miljö eller ett inbyggt X.Org-skrivbord byggde författaren hela kioskstacken i Docker: Debian + X.Org + Chromium för visningen samt en liten nginx-container för den lokala instrumentpanelen.
Resultatet blev en fungerande 22-tums pekskärmskiosk ansluten till en ZimaBoard 2 1664. Detta är fortfarande ett avancerat community-bygge, inte ett skrivbordsläge som stöds av IceWhale. Det använder värdnätverk, direkt åtkomst till grafik och indata samt en privilegierad kioskcontainer, så användare bör förstå säkerhets- och enhetsåtkomstens avvägningar innan de kopierar lösningen.
Kiosken kör en skrivbordsmiljöstack i Docker
Källans Dockerfile utgår från Debian Bookworm Slim och installerar X.Org, libinput, Openbox, Chromium, X11-verktyg, teckensnitt och Mesa. Värden förblir ZimaOS; den grafiska användarmiljön körs i containern.
Detta är exakt den typ av arbetsbelastningsisolering som ZimaOS appliance-modell är utformad för att uppmuntra.
Intel-GPU:n exponeras för kioskcontainern
Guiden använder X.Orgs modesetting drivrutinen och skickar Intel DRM-enheten till containern. Författaren konstaterade specifikt att det nödvändiga Mesa-stödet krävde Bookworm-backports för den N100-grafikstack som användes av ZimaBoard 2.
Aktuell ZimaBoard 2-maskinvara använder en Intel N150, så den som återskapar guiden bör kontrollera aktuell Mesa-/X.Org-kompatibilitet i stället för att anta att den historiska informationen om N100 är identisk.
Pekindata kommer via värdens inmatnings- och udev-lager
Bildsignalen använde HDMI/miniDP medan pekskärmsstyrenheten anslöts via USB. Guiden granskar /proc/bus/input/devices, mappar rätt händelseenhet i X.Org och delar /run/udev så att containern kan identifiera inmatningshårdvara.
En separat nginx-container visar instrumentpanelen
Källan körs nginx:alpine på en port som inte används av ZimaOS (8888 i exemplet) och monterar instrumentpanelsfilerna skrivskyddat. Chromium öppnar den lokala URL:en i kioskläge.
Att använda en separat webbcontainer gör det enkelt att uppdatera instrumentpanelsfilerna utan att bygga om den grafiska containern.
Återanvänd inte ZimaOS port 80 för instrumentpanelen
Guiden påpekar uttryckligen att ZimaOS redan använder port 80 för sin instrumentpanel. Om Chromium öppnar fel sida bör du kontrollera den anpassade instrumentpanelens port och KIOSK_URL värde i stället för att ändra ZimaOS oväntat.
Författaren lade till en lösning för pekarhändelser vid pekskärmsklick
I källans instrumentpanel kunde små fingerrörelser hindra Chromium från att utlösa traditionella onclick hanterare. Författaren ersatte klickhantering med pointerup samt en rörelsetröskel.
Den JavaScript-koden är programspecifik. Moderna webbgränssnitt som är utformade för pekskärmar bör föredra pekar- och pekvänliga kontroller i stället för att globalt köra inbäddade onclick strängar.
Privilegierat läge är den största säkerhetsmässiga kompromissen
Källan startar kioskcontainern med --privileged. Det ger bred åtkomst till enheter och värdkärnan och är betydligt mer tillåtande än en vanlig instrumentpanelscontainer.
Om du återskapar bygget bör du först testa om explicita /dev/dri, indataenhets- och udev-montering samt snävt avgränsade funktioner är tillräckliga. Behåll instrumentpanelen på ett betrott LAN.
Källan använder unless-stopped för automatisk återställning
Både nginx- och kioskcontainern använder restart: unless-stopped beteende så att skärmen återkommer efter en omstart av ZimaOS. Lagra Dockerfile-filen, X.Org-konfigurationen, startskriptet och instrumentpanelen under beständig /DATA lagring.
Aktuella ZimaOS kan paketera detta mer reproducerbart med Compose
Aktuella ZimaOS stöder import av standardiserade Docker Compose-/YAML-filer. I stället för att underhålla flera långa docker run kommandon kan en avancerad användare uttrycka båda tjänsterna, omstartspolicyer, enheter, volymer och nätverk i en enda granskad Compose-fil.
Använd den aktuella ZimaOS Compose-modellen.
Vanliga frågor om pekskärmskiosk
Behöver ZimaOS apt eller en skrivbordsmiljö installerad på värden?
Nej. Källan håller avsiktligt X.Org, Openbox, Mesa och Chromium inuti Docker.
Är detta ett officiellt skrivbordsläge i ZimaOS?
Nej. Det är en community-byggd version som IceWhale bad om tillåtelse att dela med angivande av källa.
Varför är kioskcontainern högrisk jämfört med en vanlig app?
Källan ger den privilegierat läge samt direkt åtkomst till grafik och indata, vilket minskar Dockers isolering.
