Task Summary
Currently, the Jupyter server exists externally to the Texera backend because of the implementation used for initial prototyping. It is currently in a docker container that must be manually started by the developer. In order to fully implement the notebook migration tool as a Texera microservice, we will need to move the Jupyter server from outside of Texera to be managed by Texera.
Proposed Solution or Design
Now we will introduce a new microservice for the Jupyter server, which will communicate with the notebook migration microservice to provide the Jupyter UI in the Texera workspace. This microservice will introduce a new docker-compose yaml file that uses a public Jupyter image, in addition to new endpoints in the existing notebook-migration-service to communicate with the Jupyter server. The new endpoints include setting the notebook inside of Jupyter to allow the user to view and edit their original notebook, and retrieving the relevant URLs needed to render the Jupyter UI inside of an iframe.
Priority
P2 – Medium
Task Type