mirror of
https://github.com/jupyterhub/jupyterhub.git
synced 2025-10-09 02:54:09 +00:00
Backport PR #4522: document how to use notebook v7 with jupyterhub
This commit is contained in:

committed by
MeeseeksDev[bot]
![MeeseeksDev[bot]](/assets/img/avatar_default.png)
parent
4cb3a45ce4
commit
f11ae34b73
@@ -212,13 +212,31 @@ By default, the single-user server launches JupyterLab,
|
|||||||
which is based on [Jupyter Server][].
|
which is based on [Jupyter Server][].
|
||||||
|
|
||||||
This is the default server when running JupyterHub ≥ 2.0.
|
This is the default server when running JupyterHub ≥ 2.0.
|
||||||
To switch to using the legacy Jupyter Notebook server, you can set the `JUPYTERHUB_SINGLEUSER_APP` environment variable
|
To switch to using the legacy Jupyter Notebook server (notebook < 7.0), you can set the `JUPYTERHUB_SINGLEUSER_APP` environment variable
|
||||||
(in the single-user environment) to:
|
(in the single-user environment) to:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
export JUPYTERHUB_SINGLEUSER_APP='notebook.notebookapp.NotebookApp'
|
export JUPYTERHUB_SINGLEUSER_APP='notebook.notebookapp.NotebookApp'
|
||||||
```
|
```
|
||||||
|
|
||||||
|
:::{note}
|
||||||
|
|
||||||
|
```
|
||||||
|
JUPYTERHUB_SINGLEUSER_APP='notebook.notebookapp.NotebookApp'
|
||||||
|
```
|
||||||
|
|
||||||
|
is only valid for notebook < 7. notebook v7 is based on jupyter-server,
|
||||||
|
and the default jupyter-server application must be used.
|
||||||
|
Selecting the new notebook UI is no longer a matter of selecting the server app to launch,
|
||||||
|
but only the default URL for users to visit.
|
||||||
|
To use notebook v7 with JupyterHub, leave the default singleuser app config alone (or specify `JUPYTERHUB_SINGLEUSER_APP=jupyter-server`) and set the default _URL_ for user servers:
|
||||||
|
|
||||||
|
```python
|
||||||
|
c.Spawner.default_url = '/tree/'
|
||||||
|
```
|
||||||
|
|
||||||
|
:::
|
||||||
|
|
||||||
[jupyter server]: https://jupyter-server.readthedocs.io
|
[jupyter server]: https://jupyter-server.readthedocs.io
|
||||||
[jupyter notebook]: https://jupyter-notebook.readthedocs.io
|
[jupyter notebook]: https://jupyter-notebook.readthedocs.io
|
||||||
|
|
||||||
|
@@ -6,7 +6,7 @@
|
|||||||
.. versionchanged:: 2.0
|
.. versionchanged:: 2.0
|
||||||
|
|
||||||
Default app changed to launch `jupyter labhub`.
|
Default app changed to launch `jupyter labhub`.
|
||||||
Use JUPYTERHUB_SINGLEUSER_APP=notebook.notebookapp.NotebookApp for the legacy 'classic' notebook server.
|
Use JUPYTERHUB_SINGLEUSER_APP='notebook' for the legacy 'classic' notebook server (requires notebook<7).
|
||||||
"""
|
"""
|
||||||
import os
|
import os
|
||||||
|
|
||||||
@@ -27,7 +27,25 @@ JUPYTERHUB_SINGLEUSER_APP = _app_shortcuts.get(
|
|||||||
JUPYTERHUB_SINGLEUSER_APP.replace("_", "-"), JUPYTERHUB_SINGLEUSER_APP
|
JUPYTERHUB_SINGLEUSER_APP.replace("_", "-"), JUPYTERHUB_SINGLEUSER_APP
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
if JUPYTERHUB_SINGLEUSER_APP:
|
if JUPYTERHUB_SINGLEUSER_APP:
|
||||||
|
if JUPYTERHUB_SINGLEUSER_APP in {"notebook", _app_shortcuts["notebook"]}:
|
||||||
|
# better error for notebook v7, which uses jupyter-server
|
||||||
|
# when the legacy notebook server is requested
|
||||||
|
try:
|
||||||
|
from notebook import __version__
|
||||||
|
except ImportError:
|
||||||
|
# will raise later
|
||||||
|
pass
|
||||||
|
else:
|
||||||
|
# check if this failed because of notebook v7
|
||||||
|
_notebook_major_version = int(__version__.split(".", 1)[0])
|
||||||
|
if _notebook_major_version >= 7:
|
||||||
|
raise ImportError(
|
||||||
|
f"JUPYTERHUB_SINGLEUSER_APP={JUPYTERHUB_SINGLEUSER_APP} is not valid with notebook>=7 (have notebook=={__version__}).\n"
|
||||||
|
f"Leave $JUPYTERHUB_SINGLEUSER_APP unspecified (or use the default JUPYTERHUB_SINGLEUSER_APP=jupyter-server), "
|
||||||
|
'and set `c.Spawner.default_url = "/tree"` to make notebook v7 the default UI.'
|
||||||
|
)
|
||||||
App = import_item(JUPYTERHUB_SINGLEUSER_APP)
|
App = import_item(JUPYTERHUB_SINGLEUSER_APP)
|
||||||
else:
|
else:
|
||||||
App = None
|
App = None
|
||||||
|
Reference in New Issue
Block a user