Skip to main content

A Filesystem-like mult-contents manager backend for Jupyter

Project description

Jupyter-FS

A filesystem-like ContentsManager backend for Jupyter. This library allows you to hook up multiple file backends to Jupyter and interact with their contents using JupyterLab Filetree.

Build Status GitHub issues Coverage PyPI PyPI npm

Install

pip install jupyter-fs
jupyter labextension install jupyter-fs
jupyter serverextension enable --py jupyter-fs

Configure

Add the following to your jupyter_notebook_config.json:

{
  "NotebookApp": {
    "contents_manager_class": "jupyterfs.meta_contents_manager.MetaContentsManager",
    "nbserver_extensions": {
      "jupyterfs": true
    }
  }
}

Register additional contents managers in your jupyter_notebook_config.py. As an example, an S3Contents manager is added as follows:

from s3contents import S3ContentsManager
c.JupyterFS.contents_managers = \
{
    's3': S3ContentsManager
}


c.S3ContentsManager.bucket = '<your bucket>'

## SECRET
c.S3ContentsManager.access_key_id = '<your access key>'
c.S3ContentsManager.secret_access_key = '<your secret key>'


During application startup, you should see something like this in the logs:

JupyterFS active with 2 managers
Installing JupyterFS handler on path /multicontents

And in the UI, you will see your contents managers available:

We can add additional contents managers:

c.MultiContentsManager.contents_managers = \
{
    's3': S3ContentsManager,
    'file2': AbsolutePathFileManager(root_dir=os.path.expanduser("~/Downloads"))
}

Here I utilize an AbsolutePathFileManager to grab another folder on my system for use. Remember, remote filesystems are still remote, and locally you may need to move around the filesystem with a os.chdir command (or equivalent in other languages).

Here, I have the above s3 and AbsolutePathFileManager, along with the original contents manager, for a total of 3 seperate spaces.

Development

See CONTRIBUTING.md for guidelines.

License

This software is licensed under the Apache 2.0 license. See the LICENSE and AUTHORS files for details.

Project details


Release history Release notifications

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for jupyter-fs, version 0.0.1
Filename, size File type Python version Upload date Hashes
Filename, size jupyter_fs-0.0.1-py2.py3-none-any.whl (38.0 kB) File type Wheel Python version py2.py3 Upload date Hashes View
Filename, size jupyter-fs-0.0.1.tar.gz (293.3 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page