Deploy

We highly recommend using Juxl Hub Auth to increase the security in a production environment. See Why should I use Juxl Hub Auth to understand how Juxl Hub Auth can increase the secuirty.

Using Docker

If you want to deploy Juxl inside a docker image, you can use the jupyter labextension cli to install the extensions. This example installs the required @juxl/juxl-extension and the juxl-extensions @juxl/logging, @juxl/log-console and @juxl/performance-extension.

For a complete docker image using juxl see Juxl Docker Repository.

RUN jupyter labextension install \
      @juxl/juxl-extension \
      @juxl/logging \
      @juxl/log-console \
      @juxl/performance-extension

Default Settings

Changing the default settings fixes the problem of setting the settings for each user.

We recommend to use the overrides.json to configure juxls default settings. Please make sure you are familiar with the settings composition of JupyterLab Extensions.

Most of the time, it is sensible to change the agent and lrs properties in order to log statements to an lrs. For all available configurations see Juxl Configuration. This is an example overrides.json entry to set an pseudo-anonymous agent and configure an Juxl-Hub-Auth using a python-evnrionment variable:

{
  "@juxl/juxl-extension:juxl": {
    "agent": "pseudo-anonymous",
    "lrs": {
      "url": "http://my-juxl-hub-auth.com:3333",
      "authentication": {
        "python-environment":"JUPYTERHUB_API_TOKEN"
      }
    }
  }
}

If you use the official jupyter/base-notebook:lab-3.1.6 notebook, the overrides.json can be copied into the docker container using:

COPY --chown=1000 overrides.json /opt/conda/share/jupyter/lab/settings/overrides.json