dagster: Dagit doesn't work when hosted on a path

I’ve set up a k8s LoadBalancer service for my dagit deployment.

when I curl: curl https://k8s.foo.com/tim/dagster and curl http://<load-balancer-ip>/

I get the exact same content, but in the browser I see a white page for the former url and a working dagit in the second url.

About this issue

  • Original URL
  • State: closed
  • Created 4 years ago
  • Reactions: 1
  • Comments: 28 (12 by maintainers)

Most upvoted comments

Hello, I’m trying to run dagit inside AWS SageMaker Studio. It’s essentially an instance of jupyter lab hosted in AWS. To access the dagit server running inside the jupyter lab instance, I’m trying to use the same approach we use for other web-based tools such as Tensorboard. However, when I try to access dagit web interface using the jupyerlab proxy-server, I get the white page.

I tried three approaches, trying to make it work:

  1. Simple execution dagit -f cereal.py --log-level debug And when I go to <my-jupyerlab-base-address>/jupyter/default/proxy/3000/, I get the white page even though the log messages have: INFO: 127.0.0.1:36836 - "GET / HTTP/1.1" 200 OK

  2. Using the prefix running: dagit -f cereal.py --log-level debug --path-prefix /dagit When I go to <my-jupyerlab-base-address>/jupyter/default/proxy/3000/dagit the server redirects me to <my-jupyerlab-base-address>/dagit/ and I get a Unsupported URL path on my screen. On the server side, the log has: INFO: 127.0.0.1:54204 - "GET /dagit HTTP/1.1" 307 Temporary Redirect

  3. Trying a kludge with the prefix: dagit -f cereal.py --log-level debug --path-prefix jupyter/default/proxy/3000/dagit For this one, whatever I try to access I get a Not Found message and logs like this:

INFO:     127.0.0.1:55230 - "GET /dagit HTTP/1.1" 404 Not Found
INFO:     127.0.0.1:46498 - "GET /dagit/workspace HTTP/1.1" 404 Not Found

This is probably because of how the proxy is redirecting the requests to the server, which makes sense.

Does anyone have ever succeeded in running dagit from inside jupyer lab or another similar proxy? Thanks!

Would very much like to see this! Another use case is when proxied inside of a larger application, where part of the URL is used for another purpose, e.g. the username on JupyterHub.

I think there are still some issues, it seems the assets on the main page in dagit are on an absolute path

@bollwyvl would love to see the dagit in JupyterHub case if you are able to get to it. Sounds really awesome

Hey folks! Just a heads up that I’m working on this today and it looks like it will be possible to mount Dagit on a path, we just need to pass configuration between the python process and the React web app. Will keep you posted 🙏