Validator deploy

Hi everyone,

I’m encountering an issue while deploying the validator on a VM using the official Docker Compose instructions.

I tried two different approaches, but both failed:

  1. Using HTTP: I deployed the setup as provided, changing only the domain names. After authorization, I get the following error:

    Something went wrong. Latest error (24.03.2026, 16:21:27):
    
    Error: Web Crypto API is not available. Ensure you are running in a secure context (HTTPS or localhost) and using a modern browser that supports the Web Crypto API.
    
  2. Using HTTPS (SSL termination): I configured SSL certificates, opened port 443, and proxied it to the container. The main page loads correctly via HTTPS and authorization succeeds. However, the frontend then attempts to fetch resources via HTTP, leading to Mixed Content errors:
    Mixed Content: The page at 'https://your-domain.dev/' was loaded over HTTPS, but requested an insecure resource 'http://your-domain.dev/api/v0/...' This request has been blocked.

I couldn’t find any information in the documentation regarding how to force the application to use HTTPS for API calls or how to explicitly set the base URL/endpoints.

Is there an environment variable or a configuration parameter to ensure the backend/frontend uses the correct protocol?

Notes on your two different approaches:

  1. The UI requires the Web Crypto API. However, browsers do not enable the Web Crypto API when they load non-HTTPS sites. (For local development convenience, most browsers make an exception and load the Web Crypto API for http://localhost/ sites.)

  2. By default, the compose.yaml tells the UI to use HTTP for backend calls. Change SPLICE_APP_UI_HTTP_URL to false.

Also see: