Awesome
<!-- {% comment %} Copyright 2018-2023 Elyra Authors Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. {% endcomment %} -->Elyra
Elyra is a set of AI-centric extensions to JupyterLab Notebooks.
Elyra currently includes the following functionality:
- Visual Pipeline Editor
- Ability to run a notebook, Python or R script as a batch job
- Reusable Code Snippets
- Hybrid runtime support based on Jupyter Enterprise Gateway
- Python and R script editors with local/remote execution capabilities
- Python script navigation using auto-generated Table of Contents
- Python script integrated debugger (Experimental)
- Notebook navigation using auto-generated outlines using Table of Contents
- Language Server Protocol integration
- Version control using Git integration
The Elyra Getting Started Guide includes more details on these features. A version-specific summary of new features is located on the releases page.
Try Elyra
Using container images
You can also try Elyra by running one of the container images from Docker Hub or quay.io:
elyra/elyra:latest
has the latest released version installed.elyra/elyra:x.y.z
has a specific version installed.
Note: You can also build a container image from the main
branch ("dev build") to try out features that have not been released yet.
To run one of the container images, issue the following command, specifying a tag of your choice.
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
Refer to the installation documentation for details.
Installation
For detailed information refer to the installation documentation.
Prerequisites :
- Node.js 18+
- Python 3.8+
- Miniconda (optional)
Install current release (for JupyterLab 3.x)
The current release version is displayed at the top of this page.
-
Install from PyPI
pip3 install --upgrade "elyra[all]"
-
Install from conda-forge
conda install -c conda-forge "elyra[all]"
Install older release
Installation instructions and JupyterLab support vary by release. Note that a JupyterLab build is required. Installation instructions are located in the release-specific documentation, which can be accessed by selecting a specific version.
<details> <summary>Elyra 3.1 < 3.7 (JupyterLab 3.x)</summary>-
Install from PyPI
pip3 install --upgrade "elyra[all]>=3.1.0" && jupyter lab build
-
Install from conda-forge
conda install -c conda-forge "elyra[all]>=3.1.0" && jupyter lab build
-
Install from PyPI
pip3 install --upgrade "elyra>=2.0.1" && jupyter lab build
-
Install from conda-forge
conda install -c conda-forge "elyra>=2.0.1" && jupyter lab build
Verify Installation
Run the following commands to verify the installation. Note that in the example output below the [version]
placeholder is displayed instead of an actual version identifier, which might change with every release.
jupyter server extension list
Should output:
Config dir: /.../.jupyter
Config dir: /.../etc/jupyter
elyra enabled
- Validating elyra...
elyra OK
jupyter_lsp enabled
- Validating jupyter_lsp...
jupyter_lsp [version] OK
jupyter_resource_usage enabled
- Validating jupyter_resource_usage...
jupyter_resource_usage [version] OK
jupyter_server_mathjax enabled
- Validating jupyter_server_mathjax...
jupyter_server_mathjax OK
jupyterlab enabled
- Validating jupyterlab...
jupyterlab [version] OK
jupyterlab_git enabled
- Validating jupyterlab_git...
jupyterlab_git [version] OK
nbclassic enabled
- Validating nbclassic...
nbclassic OK
nbdime enabled
- Validating nbdime...
nbdime [version] OK
Config dir: /.../etc/jupyter
NOTE: If you don't see the Elyra server extension enabled, you may need to explicitly enable
it with jupyter server extension enable elyra
jupyter labextension list
Should output:
JupyterLab [version]
/.../share/jupyter/labextensions
nbdime-jupyterlab [version] enabled OK
@jupyter-server/resource-usage [version] enabled OK (python, jupyter-resource-usage)
@krassowski/jupyterlab-lsp [version] enabled OK (python, jupyterlab_lsp)
@elyra/code-snippet-extension [version] enabled OK
@elyra/code-viewer-extension [version] enabled OK
@elyra/metadata-extension [version] enabled OK
@elyra/pipeline-editor-extension [version] enabled OK
@elyra/python-editor-extension [version] enabled OK
@elyra/scala-editor-extension [version] enabled OK
@elyra/r-editor-extension [version] enabled OK
@elyra/theme-extension [version] enabled OK
@jupyterlab/git [version] enabled OK (python, jupyterlab-git)
Other labextensions (built into JupyterLab)
app dir: /.../share/jupyter/lab
Starting Elyra
After verifying Elyra has been installed, start Elyra with:
jupyter lab
Getting Help
We welcome your questions, ideas, and feedback. Check the Getting Help
section in the Getting Started guide
to learn more about the channels you can use to get in touch with us.
Contributing to Elyra
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.
Meetup with Us!
Our daily and weekly community meeting schedule can be found here.