mirror of
https://github.com/jupyterhub/jupyterhub.git
synced 2025-10-11 12:03:00 +00:00
Merge pull request #4088 from ToobaJamal/main
Grammatical/link fixes in upgrading doc
This commit is contained in:
@@ -7,18 +7,18 @@ document describes how to do these upgrades.
|
|||||||
|
|
||||||
If you are using :ref:`a JupyterHub distribution <index/distributions>`, you
|
If you are using :ref:`a JupyterHub distribution <index/distributions>`, you
|
||||||
should consult the distribution's documentation on how to upgrade. This
|
should consult the distribution's documentation on how to upgrade. This
|
||||||
document is if you have set up your own JupyterHub without using a
|
document is useful if you have set up your own JupyterHub without using a
|
||||||
distribution.
|
distribution.
|
||||||
|
|
||||||
It is long because is pretty detailed! Most likely, upgrading
|
The steps are discussed in detail, so if you get stuck at any step you can always refer to this guide. Most likely,
|
||||||
JupyterHub is painless, quick and with minimal user interruption.
|
upgrading JupyterHub is painless, quick and with minimal user interruption.
|
||||||
|
|
||||||
Read the Changelog
|
Read the Changelog
|
||||||
==================
|
==================
|
||||||
|
|
||||||
The `changelog <../changelog.html>`_ contains information on what has
|
The `changelog <../changelog.md>`_ contains information on what has
|
||||||
changed with the new JupyterHub release, and any deprecation warnings.
|
changed with the new JupyterHub release and any deprecation warnings.
|
||||||
Read these notes to familiarize yourself with the coming changes. There
|
Read these notes to familiarize yourself with the upcoming changes. There
|
||||||
might be new releases of authenticators & spawners you are using, so
|
might be new releases of authenticators & spawners you are using, so
|
||||||
read the changelogs for those too!
|
read the changelogs for those too!
|
||||||
|
|
||||||
@@ -30,10 +30,10 @@ is managed by JupyterHub, your users will see service disruption during
|
|||||||
the upgrade process. You should notify them, and pick a time to do the
|
the upgrade process. You should notify them, and pick a time to do the
|
||||||
upgrade where they will be least disrupted.
|
upgrade where they will be least disrupted.
|
||||||
|
|
||||||
If you are using a different proxy, or running ``configurable-http-proxy``
|
If you are using a different proxy or running ``configurable-http-proxy``
|
||||||
independent of JupyterHub, your users will be able to continue using notebook
|
independent of JupyterHub, your users will be able to continue using notebook
|
||||||
servers they had already launched, but will not be able to launch new servers
|
servers they had already launched, but will not be able to launch new servers
|
||||||
nor sign in.
|
or sign in.
|
||||||
|
|
||||||
|
|
||||||
Backup database & config
|
Backup database & config
|
||||||
@@ -41,22 +41,21 @@ Backup database & config
|
|||||||
|
|
||||||
Before doing an upgrade, it is critical to back up:
|
Before doing an upgrade, it is critical to back up:
|
||||||
|
|
||||||
#. Your JupyterHub database (sqlite by default, or MySQL / Postgres
|
#. Your JupyterHub database (SQLite by default, or MySQL / Postgres
|
||||||
if you used those). If you are using sqlite (the default), you
|
if you used those). If you are using SQLite (the default), you
|
||||||
should back up the ``jupyterhub.sqlite`` file.
|
should back up the ``jupyterhub.sqlite`` file.
|
||||||
#. Your ``jupyterhub_config.py`` file.
|
#. Your ``jupyterhub_config.py`` file.
|
||||||
#. Your user's home directories. This is unlikely to be affected directly by
|
#. Your users' home directories. This is unlikely to be affected directly by
|
||||||
a JupyterHub upgrade, but we recommend a backup since user data is very
|
a JupyterHub upgrade, but we recommend a backup since user data is critical.
|
||||||
critical.
|
|
||||||
|
|
||||||
|
|
||||||
Shut down JupyterHub
|
Shut down JupyterHub
|
||||||
===================
|
====================
|
||||||
|
|
||||||
Shut down the JupyterHub process. This would vary depending on how you
|
Shut down the JupyterHub process. This would vary depending on how you
|
||||||
have set up JupyterHub to run. Most likely, it is using a process
|
have set up JupyterHub to run. Most likely, it is using a process
|
||||||
supervisor of some sort (``systemd`` or ``supervisord`` or even ``docker``).
|
supervisor of some sort (``systemd`` or ``supervisord`` or even ``docker``).
|
||||||
Use the supervisor specific command to stop the JupyterHub process.
|
Use the supervisor-specific command to stop the JupyterHub process.
|
||||||
|
|
||||||
Upgrade JupyterHub packages
|
Upgrade JupyterHub packages
|
||||||
===========================
|
===========================
|
||||||
@@ -64,14 +63,14 @@ Upgrade JupyterHub packages
|
|||||||
There are two environments where the ``jupyterhub`` package is installed:
|
There are two environments where the ``jupyterhub`` package is installed:
|
||||||
|
|
||||||
#. The *hub environment*, which is where the JupyterHub server process
|
#. The *hub environment*, which is where the JupyterHub server process
|
||||||
runs. This is started with the ``jupyterhub`` command, and is what
|
runs. This is started with the ``jupyterhub`` command and is what
|
||||||
people generally think of as JupyterHub.
|
people generally think of as JupyterHub.
|
||||||
|
|
||||||
#. The *notebook user environments*. This is where the user notebook
|
#. The *notebook user environments*. This is where the user's notebook
|
||||||
servers are launched from, and is probably custom to your own
|
servers are launched from and are probably custom to your own
|
||||||
installation. This could be just one environment (different from the
|
installation. This could be just one environment (different from the
|
||||||
hub environment) that is shared by all users, one environment
|
hub environment) that is shared by all users, one environment
|
||||||
per user, or same environment as the hub environment. The hub
|
per user, or the same environment as the hub environment. The hub
|
||||||
launched the ``jupyterhub-singleuser`` command in this environment,
|
launched the ``jupyterhub-singleuser`` command in this environment,
|
||||||
which in turn starts the notebook server.
|
which in turn starts the notebook server.
|
||||||
|
|
||||||
@@ -95,7 +94,7 @@ with:
|
|||||||
Where ``<version>`` is the version of JupyterHub you are upgrading to.
|
Where ``<version>`` is the version of JupyterHub you are upgrading to.
|
||||||
|
|
||||||
You should also check for new releases of the authenticator & spawner you
|
You should also check for new releases of the authenticator & spawner you
|
||||||
are using. You might wish to upgrade those packages too along with JupyterHub,
|
are using. You might wish to upgrade those packages, too, along with JupyterHub
|
||||||
or upgrade them separately.
|
or upgrade them separately.
|
||||||
|
|
||||||
Upgrade JupyterHub database
|
Upgrade JupyterHub database
|
||||||
@@ -109,7 +108,7 @@ database. From the hub environment, in the same directory as your
|
|||||||
|
|
||||||
jupyterhub upgrade-db
|
jupyterhub upgrade-db
|
||||||
|
|
||||||
This should find the location of your database, and run necessary upgrades
|
This should find the location of your database, and run the necessary upgrades
|
||||||
for it.
|
for it.
|
||||||
|
|
||||||
SQLite database disadvantages
|
SQLite database disadvantages
|
||||||
@@ -118,11 +117,11 @@ SQLite database disadvantages
|
|||||||
SQLite has some disadvantages when it comes to upgrading JupyterHub. These
|
SQLite has some disadvantages when it comes to upgrading JupyterHub. These
|
||||||
are:
|
are:
|
||||||
|
|
||||||
- ``upgrade-db`` may not work, and you may need delete your database
|
- ``upgrade-db`` may not work, and you may need to delete your database
|
||||||
and start with a fresh one.
|
and start with a fresh one.
|
||||||
- ``downgrade-db`` **will not** work if you want to rollback to an
|
- ``downgrade-db`` **will not** work if you want to rollback to an
|
||||||
earlier version, so backup the ``jupyterhub.sqlite`` file before
|
earlier version, so backup the ``jupyterhub.sqlite`` file before
|
||||||
upgrading
|
upgrading.
|
||||||
|
|
||||||
What happens if I delete my database?
|
What happens if I delete my database?
|
||||||
-------------------------------------
|
-------------------------------------
|
||||||
@@ -137,10 +136,10 @@ resides only in the Hub database includes:
|
|||||||
If the following conditions are true, you should be fine clearing the
|
If the following conditions are true, you should be fine clearing the
|
||||||
Hub database and starting over:
|
Hub database and starting over:
|
||||||
|
|
||||||
- users specified in config file, or login using an external
|
- users specified in the config file, or login using an external
|
||||||
authentication provider (Google, GitHub, LDAP, etc)
|
authentication provider (Google, GitHub, LDAP, etc)
|
||||||
- user servers are stopped during upgrade
|
- user servers are stopped during the upgrade
|
||||||
- don't mind causing users to login again after upgrade
|
- don't mind causing users to log in again after the upgrade
|
||||||
|
|
||||||
Start JupyterHub
|
Start JupyterHub
|
||||||
================
|
================
|
||||||
@@ -148,7 +147,7 @@ Start JupyterHub
|
|||||||
Once the database upgrade is completed, start the ``jupyterhub``
|
Once the database upgrade is completed, start the ``jupyterhub``
|
||||||
process again.
|
process again.
|
||||||
|
|
||||||
#. Log-in and start the server to make sure things work as
|
#. Log in and start the server to make sure things work as
|
||||||
expected.
|
expected.
|
||||||
#. Check the logs for any errors or deprecation warnings. You
|
#. Check the logs for any errors or deprecation warnings. You
|
||||||
might have to update your ``jupyterhub_config.py`` file to
|
might have to update your ``jupyterhub_config.py`` file to
|
||||||
|
@@ -1,5 +1,5 @@
|
|||||||
Event logging and Telemetry
|
Event logging and Telemetry
|
||||||
==========================
|
===========================
|
||||||
|
|
||||||
JupyterHub can be configured to record structured events from a running server using Jupyter's `Telemetry System`_. The types of events that JupyterHub emits are defined by `JSON schemas`_ listed at the bottom of this page_.
|
JupyterHub can be configured to record structured events from a running server using Jupyter's `Telemetry System`_. The types of events that JupyterHub emits are defined by `JSON schemas`_ listed at the bottom of this page_.
|
||||||
|
|
||||||
@@ -15,8 +15,8 @@ Event logging is handled by its ``Eventlog`` object. This leverages Python's sta
|
|||||||
|
|
||||||
To begin recording events, you'll need to set two configurations:
|
To begin recording events, you'll need to set two configurations:
|
||||||
|
|
||||||
1. ``handlers``: tells the EventLog *where* to route your events. This trait is a list of Python logging handlers that route events to
|
1. ``handlers``: tells the EventLog *where* to route your events; this trait is a list of Python logging handlers that route events to the destination
|
||||||
2. ``allows_schemas``: tells the EventLog *which* events should be recorded. No events are emitted by default; all recorded events must be listed here.
|
2. ``allows_schemas``: tells the EventLog *which* events should be recorded; no events are emitted by default; all recorded events must be listed here
|
||||||
|
|
||||||
Here's a basic example:
|
Here's a basic example:
|
||||||
|
|
||||||
|
@@ -1,12 +1,12 @@
|
|||||||
# Spawners and single-user notebook servers
|
# Spawners and single-user notebook servers
|
||||||
|
|
||||||
Since the single-user server is an instance of `jupyter notebook`, an entire separate
|
Since the single-user server is an instance of `jupyter notebook`, an entirely separate
|
||||||
multi-process application, there are many aspects of that server that can be configured, and a lot
|
multi-process application, there are many aspects of that server that can be configured and a lot
|
||||||
of ways to express that configuration.
|
of ways to express that configuration.
|
||||||
|
|
||||||
At the JupyterHub level, you can set some values on the Spawner. The simplest of these is
|
At the JupyterHub level, you can set some values on the Spawner. The simplest of these is
|
||||||
`Spawner.notebook_dir`, which lets you set the root directory for a user's server. This root
|
`Spawner.notebook_dir`, which lets you set the root directory for a user's server. This root
|
||||||
notebook directory is the highest level directory users will be able to access in the notebook
|
notebook directory is the highest-level directory users will be able to access in the notebook
|
||||||
dashboard. In this example, the root notebook directory is set to `~/notebooks`, where `~` is
|
dashboard. In this example, the root notebook directory is set to `~/notebooks`, where `~` is
|
||||||
expanded to the user's home directory.
|
expanded to the user's home directory.
|
||||||
|
|
||||||
@@ -20,7 +20,7 @@ You can also specify extra command line arguments to the notebook server with:
|
|||||||
c.Spawner.args = ['--debug', '--profile=PHYS131']
|
c.Spawner.args = ['--debug', '--profile=PHYS131']
|
||||||
```
|
```
|
||||||
|
|
||||||
This could be used to set the users default page for the single user server:
|
This could be used to set the user's default page for the single-user server:
|
||||||
|
|
||||||
```python
|
```python
|
||||||
c.Spawner.args = ['--NotebookApp.default_url=/notebooks/Welcome.ipynb']
|
c.Spawner.args = ['--NotebookApp.default_url=/notebooks/Welcome.ipynb']
|
||||||
@@ -30,4 +30,4 @@ Since the single-user server extends the notebook server application,
|
|||||||
it still loads configuration from the `jupyter_notebook_config.py` config file.
|
it still loads configuration from the `jupyter_notebook_config.py` config file.
|
||||||
Each user may have one of these files in `$HOME/.jupyter/`.
|
Each user may have one of these files in `$HOME/.jupyter/`.
|
||||||
Jupyter also supports loading system-wide config files from `/etc/jupyter/`,
|
Jupyter also supports loading system-wide config files from `/etc/jupyter/`,
|
||||||
which is the place to put configuration that you want to affect all of your users.
|
which is the place to put the configuration that you want to affect all of your users.
|
||||||
|
Reference in New Issue
Block a user