Skip to content

Bug: jupyter server management is very brittle #151

@jlewi

Description

@jlewi

The initial management of jupyter servers in
branch: dev/jlewi/jupyter
commit: c1b5319

Is very brittle. The issue is we rely on token auth between the runme server and the jupyter server. The runme server then maintains a cache of the tokens/jupyter server configuration e.g. port. When starting jupyter server we need to write a .json file to the .runme-agent/jupyter directory.

There is all kinds of brittleness in this initial design. A lot of the issues go back to the double hop
runme -> jupyter_server -> ipykernel.

This was discussed in the original design in #63.

Some options are

  1. Get rid of jupyter_server and reimplement websockets -> zmq inside runme.
  2. Get rid of runme and talk to jupyter_server directly

Could we use OIDC with Jupyter server?
https://jupyter-server.readthedocs.io/en/latest/operators/security.html#authentication-and-authorization

I think we'd need an IdentityProvider/Authorizer plugin to validate the JWT and authorize users based on it.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions