Skip to content
Discussions/App Development/Validator deployForum ↗

Validator deploy

App Development2 posts43 viewsLast activity Mar 2026
DI
DimOpsOP
Mar 2026

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?

WA
WallaceKelly
Mar 2026

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:

Hi, @Rahil_M! Welcome to the Daml Forums! Thank you for the context from the GSF mailing list. Very helpful! Can you try setting SPLICE_APP_UI_HTTP_URL=false in your Docker Compose file? Restart and try the public URL. SPLICE_APP_UI_HTTP_URL is checked in docker-entrypoint.sh. And then used to edit the config.js. The config.js includes the http/https protocol for the validator api. This may not fully unblock you, but it is worth a try. As a side note, an error message has been added for t…
← Back to Discussions