Elyra is a set of AI-centric extensions to JupyterLab Notebooks.
Elyra currently includes the following functionality:
- Create and run AI pipelines
- Run notebooks as batch jobs
- Reusable Code Snippets
- Hybrid runtime support based on Jupyter Enterprise Gateway
- Python script editor with local/remote execution capabilities
- Python script navigation using auto-generated Table of Contents
- Notebook navigation using auto-generated outlines using Table of Contents
- Version control using Git integration
The Elyra Getting Started Guide includes more details on these features.
You can try out some of Elyra features using the My Binder service.
Click on a link below to try Elyra, on a sandbox environment, without having to install anything.
- (Latest stable version - see changelog for recent updates)
- (Development version - expect longer image load time due to just-in-time build)
You can also try Elyra by running one of the docker images from Docker Hub:
elyra/elyra:latest
has the latest released version installed.elyra/elyra:x.y.z
has a specific version installed.elyra/elyra:dev
is automatically re-built each time a change is committed to the master branch.
The command below starts the most recent development build in a clean environment:
docker run -it -p 8888:8888 elyra/elyra:dev jupyter lab --debug
To make a local directory containing your Notebooks (e.g. ${HOME}/opensource/jupyter-notebooks/) available in your docker container, you can use a mount command similar to the following:
docker run -it -p 8888:8888 -v ${HOME}/opensource/jupyter-notebooks/:/home/jovyan/work -w /home/jovyan/work elyra/elyra:dev jupyter lab --debug
These should produce output similar to that below, where you can then find the URL to be used to access Elyra in your local browser.
To access the notebook, open this file in a browser:
file:///home/jovyan/.local/share/jupyter/runtime/nbserver-6-open.html
Or copy and paste one of these URLs:
http://4d17829ecd4c:8888/?token=d690bde267ec75d6f88c64a39825f8b05b919dd084451f82
or http://127.0.0.1:8888/?token=d690bde267ec75d6f88c64a39825f8b05b919dd084451f82
Elyra can be installed via PyPi:
- JupyterLab 1.x is supported on Elyra 0.10.x and below
via PyPi:
pip install elyra==0.10.3 && jupyter lab build
- JupyterLab 2.x is supported on Elyra 1.0.0 and above
via PyPi:
pip install --upgrade "elyra<2.0.0" && jupyter lab build
Note: Ubuntu and CentOS users may need to use pip3 install elyra
using Conda:
conda install -c conda-forge "elyra<2.0.0" && jupyter lab build
- JupyterLab 3.x is supported on Elyra 2.0.0 and above
via PyPi:
pip install --upgrade "elyra>=2.0.0" && jupyter lab build
Note: Ubuntu and CentOS users may need to use pip3 install elyra
using Conda:
conda install -c conda-forge "elyra>=2.0.0" && jupyter lab build
jupyter serverextension list
Should output:
config dir: /usr/local/etc/jupyter
elyra enabled
- Validating...
elyra 1.5.0.dev0 OK
jupyterlab enabled
- Validating...
jupyterlab 2.2.8 OK
jupyterlab_git enabled
- Validating...
jupyterlab_git 0.23.1 OK
nbdime enabled
- Validating...
nbdime 2.0.0 OK
jupyter labextension list
Should output:
Known labextensions:
app dir: /.../share/jupyter/lab
@elyra/code-snippet-extension v1.5.0-dev enabled OK*
@elyra/metadata-extension v1.5.0-dev enabled OK*
@elyra/pipeline-editor-extension v1.5.0-dev enabled OK*
@elyra/python-editor-extension v1.5.0-dev enabled OK*
@elyra/theme-extension v1.5.0-dev enabled OK*
@jupyterlab/git v0.22.3 enabled OK
@jupyterlab/toc v4.0.0 enabled OK
nbdime-jupyterlab v2.0.0 enabled OK
NOTE: If you don't see the Elyra server extension enabled, you may need to explicitly enable
it with jupyter serverextension enable elyra
After verifying Elyra has been installed, start Elyra with:
jupyter lab
If you are interested in helping make Elyra better, we encourage you to take a look at our
Contributing page,
Development Workflow
documentation, and invite you to attend our weekly dev community meetings.
Join us weekly to discuss Elyra development topics. Everyone is welcome and participation is optional.
When: Thursdays at 9AM Pacific
Where: Webex
What: Meeting Notes