Skip to content

Update the developer container to work with HTTPS - #9

Merged
jandrej merged 2 commits into
mainfrom
glvis-https-proxy
Sep 8, 2026
Merged

jandrej merged 2 commits into
mainfrom
glvis-https-proxy

Conversation

@tdrwenski

@tdrwenski tdrwenski commented Sep 4, 2026 •

Copy link
Copy Markdown
Collaborator

Summary

  • Route the GLVis viewer and WebSocket bridge through the developer container's Nginx proxy.
  • Serve the viewer at /glvis/live/ and proxy /glvis-ws to the internal GLVis bridge.
  • Build the developer image with the GLVis HTTPS/WebSocket endpoint support.
  • Update the MFEM tutorial link to pass ?socket=/glvis-ws, so the viewer automatically connects through the public secure route.

Example

The tutorial link:
https://<subdomain>.mfem.hpcic.training/glvis/live/?socket=/glvis-ws
loads the GLVis viewer and automatically connects to:
wss://<subdomain>.mfem.hpcic.training/glvis-ws
Nginx proxies that connection to glvis-browser-server on internal port 8080.

Testing

I have tested on my fork: tdrwenski#2 with images https://github.com/tdrwenski?tab=packages&repo_name=containers in combination with GLVis/glvis-js#39. Locally you have vscode at http://localhost:3000 and http://localhost:3000/glvis/live/?socket=/glvis-ws connects automatically

Question

The develop docker container still works locally like this but technically if you run locally you don't need nginx. Do you think this is okay or would you prefer a different "tutorial" docker image? or is the developer image mostly for the tutorial?

Serve VSCode, the GLVis viewer, and the GLVis websocket bridge behind an
nginx reverse proxy on the tutorial port (3000), routed by path. This lets
the container sit behind an HTTPS load balancer that forwards only one port.

- nginx routes / to VSCode (moved to 3001), /glvis/ to the viewer site,
  and /glvis-ws to the websocket bridge (with upgrade headers)
- patch the cloned GLVis viewer to use a same-origin ws(s):// URL at
  /glvis-ws, fixing mixed-content blocking on https
@tdrwenski
tdrwenski marked this pull request as ready for review September 4, 2026 20:31
@tdrwenski
tdrwenski requested a review from jandrej September 4, 2026 20:31
@jandrej
jandrej merged commit d621f3b into main Sep 8, 2026
5 checks passed
@tdrwenski
tdrwenski deleted the glvis-https-proxy branch September 8, 2026 19:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants