Jupyterhub sharing notebooks between users in Elastic Kubernetes Service

Hello Community!
I deployed jupyterhub from the official jupyterhub helm chart version 1.1.3-n470.h217c7977. All works ok but we would like to enhance it with a sharing notebooks feature. We have a few pillars:

  • we would like to use S3 (or as a last resort EFS),
  • we use okta auth in our jupyterhub so we would like to have sharing granulation per user(how to integrate okta ID with create/edit/delete S3 permissions?),
  • we don’t want to download and upload the whole S3 bucket every time, because it can be a huge amount of data. We would like to upload/download only changed files.

I found some similar problem here JupyterHub Object Storage S3. But the solution is not good for a big amount of data and each user download everything.

Thank you in advance!

EFS is the easiest to setup Setting up EFS storage on AWS — Zero to JupyterHub with Kubernetes documentation

Mounting S3 is theoretically possible, you can see an earlier discussion in

but you’ll need to do some development work

I too would highly suggest using EFS instead of S3! I did, however, recently build GitHub - yuvipanda/jupyterhub-roothooks (with some docs in the README) to be able to mount s3 more easily. Take a look at that if you want, but definitely definitely use S3 as last resort and EFS as first call on AWS

2 Likes