Home · Docs · On-site box · Windows

Windows

Windows can be the box. That is Docker, not the TV kiosk.

Docker Desktop runs the same Linux appliance. TVs, tablets, and other PCs talk to this PC’s LAN IP. The Edge fullscreen installer is a different product: a screen.

Box vs screen. This page is the site manager. A mini-PC HDMI’d to a display uses the Windows kiosk agent (install.ps1 -MasterUrl) and points at whatever machine is the box, maybe this one, maybe a Linux NUC.

Need

Install

Download dutywall-standalone.tar.gz, unpack (7-Zip or tar -xf in PowerShell), then from that folder:

powershell -ExecutionPolicy Bypass -File .\scripts\standalone-up.ps1
# first run writes .env with this PC’s LAN IP: set DUTYWALL_PANEL_PASSWORD, re-run

The script uses docker-compose.yml plus docker-compose.windows.yml. MediaMTX cannot use Linux network_mode: host on Docker Desktop, so that overlay publishes its ports and points Dutywall at host.docker.internal.

Confirm

Panel: http://<this-PC-LAN-IP>:8090/

curl.exe -sS http://127.0.0.1:8090/healthz

LAN IP in PowerShell:

(Get-NetIPConfiguration | Where-Object { $_.IPv4DefaultGateway }).IPv4Address.IPAddress

Port 80

Compose also maps :80 → the player, which helps some Roku TVs. If IIS or another service already owns port 80, set DUTYWALL_PORT=8090 and put that port in DUTYWALL_BASE_URL.

Cameras

RTSP works if Docker can route to the camera. Linux host-network is still the stronger camera path (VPN/WireGuard). You can run the box on Windows and keep cameras off, or start MediaMTX with --profile camera.

Windows Firewall

Allow inbound TCP 8090 (and 80 if you use it) from the LAN so TVs can poll the box.

Next

Attach to Dutywall Cloud · Add screens (including this PC as a kiosk, if you must)

Questions

Is this a Win32 service?

No. Docker Desktop runs Linux containers. If Desktop is not running, the box is down.

Can I skip Docker and run Flask on Windows?

Not supported. The appliance image is the product.