# Handheld Multi-Modal Application Deployment This guide provides instructions on how to deploy the Handheld Multi-Modal application on a local machine. ## (Optional) Configuring the Proxy > **Note**: If not using proxy servers, skip to [Deploying the Application](#deploying-the-application). Depending on the system's network configuration, you may need an additional proxy configuration. Ensure that `/etc/environment` contains proxy variables; replace `proxy-example:123` with a valid proxy for the local environment: ```bash sudo tee -a /etc/environment > /dev/null < /dev/null < /dev/null <443/tcp, 127.0.0.1:5443->5443/tcp, 127.0.0.1:7443->7443/tcp, 80/tcp, 127.0.0.1:8443->8443/tcp nginx-https 1cf974e6c425 ghcr.io/open-webui/open-webui:v0.9.6-slim "bash start.sh" 27 seconds ago Up 25 seconds (health: starting) 8080/tcp open-webui 90c0db070f36 whisper-stt:latest "/entrypoint.sh pyth…" 27 seconds ago Up 26 seconds 5000/tcp whisper-stt ee1cef103480 grafana/grafana:13.1.0-25893932881 "/run.sh" 27 seconds ago Up 26 seconds 3000/tcp grafana 231fd29c88d8 openvino/model_server:latest-gpu "/ovms/bin/ovms --re…" 27 seconds ago Up 26 seconds ovms 3dc8dfefa60e intel/vippet-ui:2026.1.0-20260512-weekly "/docker-entrypoint.…" 34 seconds ago Up 27 seconds 0.0.0.0:80->80/tcp, [::]:80->80/tcp ui d1ec3f394245 intel/vippet-app:2026.1.0-20260512-weekly "./entrypoint.sh" 34 seconds ago Up 33 seconds (healthy) 0.0.0.0:7860->7860/tcp, [::]:7860->7860/tcp vippet 9fa7733f0cc4 bluenviron/mediamtx:1.15.6 "/mediamtx" 34 seconds ago Up 33 seconds 0.0.0.0:8554->8554/tcp, [::]:8554->8554/tcp, 0.0.0.0:8189->8189/udp, [::]:8189->8189/udp, 0.0.0.0:8889->8889/tcp, [::]:8889->8889/tcp mediamtx 76d9c62a039b intel/vippet-onvif-discovery:2026.1.0-20260512-weekly "/bin/sh -c 'python …" 34 seconds ago Up 33 seconds onvif-discovery f9d9fc705f29 intel/metrics-manager:2026.1.0-20260508-weekly "/entrypoint.sh" 34 seconds ago Up 33 seconds (healthy) 0.0.0.0:9090->9090/tcp, [::]:9090->9090/tcp, 8186/tcp, 0.0.0.0:9273->9273/tcp, [::]:9273->9273/tcp metrics-manager c7e676f86e1b intel/model-download:2026.1.0-20260505-weekly "/opt/entrypoint.sh …" 34 seconds ago Up 33 seconds (healthy) 0.0.0.0:8000->8000/tcp, [::]:8000->8000/tcp ``` > **Note**: After a system restart, run `./run up` from the `handheld-multi-modal` directory to start the applications again. ## Accessing Application User Interface This composite application exposes multiple endpoints through the NGINX TLS reverse proxy. They are bound to localhost only and are not exposed on any external IP address. Since the intended use is on handheld devices, the applications do not provide authentication or authorization. > **Notice**: > The "self-signed certificate" browser warning is expected. > Modern browsers require HTTPS to enable microphone input used by Open WebUI and Speech To Text services, therefore, the NGINX reverse proxy uses the certificate to ensure TLS transport on the `localhost` bound addresses. | Service | URL | Notes | |---------|-----|-------| | Visual Pipeline and Platform Evaluation Tool UI | https://localhost:443 | via NGINX reverse proxy | | Open WebUI | https://localhost:8443 | Conversational Agent backed by LLM — browser microphone enabled (via NGINX reverse proxy) | | Whisper speech-to-text service | https://localhost:5443 | Speech-to-text — browser microphone enabled (via NGINX reverse proxy) | | Grafana dashboard | https://localhost:7443 | Pre-provisioned dashboards (via NGINX reverse proxy) |