Skip to content

Jupyter

The main way of using the JupyterLab and Notebooks is through interactive app on the OpenOndemand portals.

You can create customized environments based on examples in /apps/portal/jupyter/ directory. Creating the directory ~/portal/jupyter/ and placing your customized environments there they will show up in the portal.

JupyterLab can offer a nice environemnt for interactive jobs: a terminal, text editor, and many more extensions for version control, viewing 3D files, HDF5 files and more all in multiple tabs. It can be used as the go-to tool for all interactive work, even if you just need a terminal.

Selected extensions

  • jupyterlab-h5web is a JupyterLab extension to explore and visualize HDF5 file contents, using the web-based viewer h5web.
  • JupyterLab-git is a JupyterLab extension for version control using Git.
  • jupyterview is an extension that adds the VTK data visualization capability to JupyterLab.
  • JupyterLab-NVDashboard is a JupyterLab extension for displaying GPU usage dashboards.
  • jupyter-lmod allows users to interact with environment modules (Lmod or Tmod) before launching kernels. However, the change is not applied immediately. Once you load/unload a module, you have to shutdown kernels and launch the kernel again to update the change.

Demonstration

jupyterlab demo

Here is a portal runtime script example showing how to create a powerful jupyter environment in the above screenshot:

module purge

# Load a Jupyter module (will load JupyterLab and some default goodies like jupyterlmod)
ml Jupyter-bundle/20251112-GCCcore-14.3.0

# and anything extra
ml jupyterlab-h5web/12.6.1-foss-2025b
ml JupyterLab-git/0.51.4-GCCcore-14.3.0
ml jupyterview/0.8.0-foss-2025b
ml JupyterLab-NVdashboard/0.13.0-GCCcore-14.3.0
ml ipympl/0.9.8-gfbf-2025b matplotlib/3.10.5-gfbf-2025b plotly.py/6.5.0-GCCcore-14.3.0

# You can launch jupyter notebook or lab, but you must specify the config file as below:
jupyter lab --config="${CONFIG_FILE}"