Categories

Versions

You are viewing the RapidMiner Deployment documentation for version 9.6 - Check here for latest version

Docker images for JupyterHub

The documentation below describes our integrated JupyterHub instance, which is a component consisting of the following Docker images:

You can read a description for each container below.

These containers are only functional when deployed together, they will not function as intended individually. Check our deployment templates to see how these should be deployed.

JupyterHub DB

This container implements a Postgres database which serves as the configuration store for the JupyterHub backend. This is a standard PostgreSQL docker image.

Configuration

  • Volumes
    • /var/lib/postgresql/data: volume mount to persist the database data
  • Ports: none.
  • Environment variables:
    • POSTGRES_DB, POSTGRES_USER, POSTGRES_PASSWORD: credentials and database name where the JupyterHub data will be stored. The same values should be provided for the JupyterHub backend container.

JupyterHub Backend

This container implements the JupyterHub backend, which implements the core of the JupyterHub service. It serves the authentication component for the notebooks, handles user management, and manages the lifecycle of the containers which are running the notebook environments for each authenticated user.

For available versions, please see the tags on Docker Hub.

Configuration

  • Volumes
    • /var/run/docker.sock: volume mount for the Docker socket used for the platform deployment.
  • Ports: none.
  • Environment variables:
    • JHUB_HOSTNAME: internal hostname of the backend service, needed for communication of various components in the deployment.
    • SERVER_BASE_URL: internal hostname and port of the RapidMiner Server instance present in the deployment
    • ADMIN_USER: name of the user which should get admin privileges in the JupyterHub backend
    • POSTGRES_HOST: internal hostname of the database service used for JupyterHub, see above
    • POSTGRES_DB, POSTGRES_USER, POSTGRES_PASSWORD: database name and credentials for the JupyterHub DB. Must have the same values configured as above
    • DOCKER_NOTEBOOK_IMAGE: name and tag of the Docker image which will be spawned for each JupyterHub user after login
    • JUPYTERHUB_CRYPT_KEY: secret key used to encrypt user data in the JupyterHub DB
    • JOBSERVICE_AUTH_SECRET: shared secret between Server, Job Agents and JupyterHub. Must match similar environment variables defined for the RapidMiner Server container. Base64 encoding expected.
    • JHUB_DEBUG, JHUB_PROXY_DEBUG, JHUB_DB_DEBUG, JHUB_SPAWNER_DEBUG: set to True to enable debug level logging for the respective containers. Default is False. Remember to turn them off when not needed to increase performance.

JupyterHub Notebook

This container implements the container which will be instantiated for each user when they log in to JupyterHub. This container will serve the JupyterLab user interface and the default Python environment.

For available versions, please see the tags on Docker Hub.

Configuration

  • Volumes: none.
  • Ports: none.
  • Environment variables: none.