SwissDataScienceCenter / renku-python

A Python library for the Renku collaborative data science platform.
https://renku-python.readthedocs.io/
Apache License 2.0
37 stars 29 forks source link

Renku Daemon mode #1659

Open Panaetius opened 3 years ago

Panaetius commented 3 years ago

We've had talk about running the core-service as a daemon in the background from time to time.

This issue is intended to track discussions in this regard.

We should decide if we actually want this and what the benefits and use-cases of it would be, and come up with stories and a design for it.

Panaetius commented 3 years ago

(1) from https://github.com/SwissDataScienceCenter/renku-python/issues/1334 and by extension https://github.com/SwissDataScienceCenter/renku-python/issues/1645 are relevant for this.

ciyer commented 3 years ago

Adding a couple of notes for integrating this with JupyterLab.

The jupyter server handles http requests to the pod, so the service should be exposed through the server. The best option for this is is probably https://github.com/jupyterhub/jupyter-server-proxy

There are two other ways to inject services to extend the JupyterLab backend, but these are less suitable since they require implementing Tornado handlers for the requests, and we would like to reuse our Flask app.:

  1. Server Extension Module: https://github.com/jupyterlab/extension-examples/tree/master/advanced/server-extension
  2. Server Extension App: https://github.com/jupyter-server/jupyter_server/tree/master/examples/simple

They are described here: https://jupyter-server.readthedocs.io/en/latest/developers/extensions.html

ciyer commented 3 years ago

The UI needs the following from this service:

Information

Commands

See the connected UI issues for more information.