There are two ways:
- Use jupyter-server-proxy to proxy a webapp via Jupyter server/lab: Welcome to Jupyter Server Proxy’s documentation! — Jupyter Server Proxy documentation
- Use jhsingle-native-proxy to replace the JupyterHub singleuser process and proxy a webapp: New package to run arbitrary web service in JupyterHub (jhsingle-native-proxy)