I have a concern regarding accessing a local JupyterHub via a public IP. Here’s my scenario: I have a website running on a public IP address, and within that webpage, there’s a tab labeled “Jupyter.” When a user clicks on that tab, it redirects them to the local JupyterHub IP using port forwarding. However, I’m uncertain about how the spawner and user accounts would function in this setup. Any insights or best practices would be greatly appreciated.
You only need to expose a single host/port for JupyterHub, by default this is port 8000. JupyterHub runs its own proxy to manage connections between the front-end web and singleuser servers, but as long as everything is correctly configured that shouldn’t matter.
If you’re running into problems can you tell us how you’ve setup your JupyterHub, and show us your configuration?
Thanks for your response. Currently I am waiting for my team to allow a port to be open to the public. From there, I will then continue with setting up the JupyterHub.
My configuration in jupyterhub_config.py is as shown below. However, this is a local setup which works out.
Currently, We are unsure how we can transition from a local setup to a public setup, and we would like to get some suggestions from the community.
Below is a simple setup for our JupyterHub. In the diagram, we have a public IP running a web service. On the web service, we have a tab that redirects users to a host (in a local network) running JupyterHub. I am curious if this setup is possible since we need to have a public IP and port running JupyterHub for Globus to work. If we have to run JupyterHub on a public IP and port, is there a way to make users access JupyterHub via our web service and not directly from the public IP? Thanks in advance for the help provided.
If I am understanding it correctly, we can setup the jupyterhub in a local environment running on 127.0.0.1 and using nginx, we will redirect an IP to 127.0.0.1 which jupyterhub is running on? Since I am using the oauth_callback_url to authenticate my jupyterhub, I will need a Public IP and port to reach from globus back to the 127.0.0.1?