Just to check if you are placing this config in right file, this must go into jupyter_server_config.py that is placed in one of the config directories reported by jupyter --paths in your JupyterLab server.
Once the config is placed in right file, assuming your JupyterHub user is foo and you are using a unnamed default server, you must verify the new registered endpoint at https://myFQDN/hub/foo/test-server/.
I also had that doubt initially, i am pointing to this config explicitly in my startup command, some other parts of the config (auth) is being read so that’s not the issue
Ive read the documentation and also tried your solution but still got no launcher item (nor a URL reachable server) cant seem to find anything relevant in the logs.
Could you please post your config and logs of JupyterHub and JupyterLab? There was a typo in my earlier comment, the server will be availble at /user/<username>/test-server/ as @manics posted. In your response you have /user/<username>/lab/test-server/. There should not be/lab in the URL path and trailing slash is important
Is the extensions installed and enabled? Config is one requirement, but there is a jupyterlab extension and jupyter server extension that also need to be enabled to make it all work. They are often setup automatically after installing jupyter-server-proxy, but maybe something went wrong?
From mobile now, i suggest listing jupyter server extensions, and jupyterlab extensions, and checking you see something there enabled related to jupyter-server-proxy
To add to what @consideRatio already gave some pointers on debugging, your are putting c.ServerProxy.servers config in wrong place. The config content you posted is for JupyterHub. Assuming that config is placed in a file called jupyterhub_config.py, you give to JupyterHub as CLI arg as jupyterhub -f jupyterhub_config.py.
Now the single user JupyterLab servers will not read and should not read any config from this file by default. This must go into a file say /etc/jupyter/jupyter_server_config.py on the host where your single user server is running. Then the single user JupyterLab server can pick up this config and register the custom server endpoints.
You can place all JupyterLab related config in any config folders returned by jupyter --paths command on the single user server. For example, JupyterHub deployed on k8s return following:
I think so, i had some luck using a different prebuilt proxy (This one) but i cannot create my own…
As for more information, here’s my Dockerfile:
FROM jupyterhub/jupyterhub:latest
# Install sudo
RUN apt-get update && apt-get install -y sudo
# Install Jupyter packages
RUN pip install jupyterlab jupyter_core jupyter-server-proxy oauthenticator
#RUN jupyter server extension enable --sys-prefix jupyter_server_proxy
# ^ This line did not work
# Start JupyterHub
CMD ["jupyterhub", "--config=/srv/jupyterhub/jupyterhub_config.py"]
I am using jupyterhub and i know that the config is being read by me being able to use my configured authentication login. Or am i interpreting your question wrong?
which created a launcher item for me, when pressed:
log:
jupyterhub_jupyterhub | Hello, World!
Related issues seem to have a docker installation in common, maybe it has something to do with the installation/initiation of the jupyter_server_proxy package within a container that goes wrong?