https://github.com/murat-polat/tutor-contrib-jupyter
Jupyterhub runs as a subdomain of Tutor Open edX, Comes with Pandas, Bokeh, Numpy and other popular libraries. Allows to create multiple users, which has own kernel
https://github.com/murat-polat/tutor-contrib-jupyter
docker edx jitsi-meet jupyter-notebook jupyterhub jupyterlab tutor webrtc
Last synced: 6 months ago
JSON representation
Jupyterhub runs as a subdomain of Tutor Open edX, Comes with Pandas, Bokeh, Numpy and other popular libraries. Allows to create multiple users, which has own kernel
- Host: GitHub
- URL: https://github.com/murat-polat/tutor-contrib-jupyter
- Owner: murat-polat
- Created: 2021-06-19T09:52:34.000Z (almost 4 years ago)
- Default Branch: master
- Last Pushed: 2022-07-02T22:52:51.000Z (almost 3 years ago)
- Last Synced: 2024-11-15T04:48:27.821Z (7 months ago)
- Topics: docker, edx, jitsi-meet, jupyter-notebook, jupyterhub, jupyterlab, tutor, webrtc
- Language: Python
- Homepage:
- Size: 9.06 MB
- Stars: 1
- Watchers: 1
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
## Jupyterhub plugin for Tutor Open edX
- Jupyterhub and JupyterLab runs as a subdomain of Tutor
- Comes with Pandas, Bokeh, Numpy and other popular libraries.
- Allow to create multiple users, which has own kernel
First of all, add an A record with name "jupyter" to your DNS management. Because your JupyterHUB server will be served as a subdomain of your platform.
For example, if your LMS/Domain is https://myopenedx.com, so JupyterHUB server will be https://jupyter.myopenedx.com
### Installation:
`git clone https://github.com/murat-polat/tutor-contrib-jupyter`
`pip3 install -e tutor-contrib-jupyter`
`tutor plugins list`
`tutor plugins enable jupyter`
`tutor config save`
Rebuild your edX platform with plugin and Jupyterhub-XBlock
`tutor images build openedx`
`tutor local quickstart`
### Create multiple Notebook users (Spawners)
Login as a teacher(password: soloadmin) => clik to Control Panel then => Admin

Here you can add multiple user which is pre installed via the Dockerfile (https://github.com/murat-polat/tutor-contrib-jupyter/blob/master/tutorjupyter/templates/jupyter/build/jupyter/Dockerfile).. By default can be added 100 users(edx0,edx1, edx2..... edx100), which can be populated in user_list.txt file (https://github.com/murat-polat/tutor-contrib-jupyter/blob/master/tutorjupyter/templates/jupyter/build/jupyter/user_list.txt)
Exampel:
We want to add 10 new JupyterLab users. To do that, click to => Add Users button, usernames sparated by lines, then => Add Users.
now you have 10 newuser. Username and password is same (e.g. Username: edx10, Password: edx10) here teacher can access all users notebook or other their files.For courses " Student " is common user, but all users can use their own server, doesn't matter. Teacher should be uses for user administrations. Because basic user can not see or edit admin(teacher) files :)
### Video chat with Jitsi (WebRTC):
Login which user do you want, give name to your VideoChat rom, then click to "JOIN" button.
Ask to other paticipants to join your meeting. Link will be same lab, and same rom.
(e.g https://jupyter.yourdomain/user/edx1/lab) login Join the same rom(TestRom)
### Open edX Studio integration:
Jupyterhub XBlock comes with to main users " student (password: solo) " and " teacher (password: soloadmin) ". You can change password and create mulitable users and administrators, which will be explained soon.
- login to studio as a staff or superuser
- Create a course, than settings=>advanced settings=> Advanced Module List add `"jupyterhub"` and save
- Now you can use JupyterHub as a Unit, for every type of course. But first, you need to edit your JupyterHub (Name, ButtonText, JupyterHub URL, JupyterNotebook URL(you will create this later) and JupyterLab URL )
- You need to create a notebook for students view in your course. To do that click " `Start JupyterHub in new tab`" login as " student " password is "solo". Then New => Python3(ipykernel). dobbel click to "Untitled" and rename it whatever you want.
### JupyterLab:
JupyterLab is next-generations, great advanced tools for everyone. Not just a notebook,that comes with text editor, console, terminal, Jitsi-Meet and much more. For more information please visit https://jupyterlab.readthedocs.io/en/stable/getting_started/overview.html
To start JupyterLab just click the " Start JupyterLab in new tab " Now all lab ready for every Hub users.
Now you can write your entire course with Jupyter tools :)

Copy the URL of your notebook and paste in " Edit=> JupyterHub or Lab URL" save and refresh your page. Now your notebook is ready to publish.

https://github.com/murat-polat/jupyterhub-xblock