Jupyterlab

From CT Wiki
Jump to navigation Jump to search

Jupyterlab is a popular interactive Python notebook manager. This service runs on a Stoomboot node with 64 cores and 512 GB memory.

Accessing the service

Jupyterhub is available exclusively for Nikhef users. You have to be on the Nikhef network or use EduVPN to access the service.

To use it go to https://callysto.nikhef.nl/ and log on via Nikhef SSO. The notebook will run under your Nikhef account with full access to your home directory, project and data shares, and dCache.

Setting up new environments

Using conda
source /opt/tljh/user/etc/profile.d/conda.sh
conda create --name python38 python=3.8
conda activate python38
conda install ipykernel
python -m ipykernel install --user --name python38 --display-name 'Python 3.8'

This creates a new conda environment in the directory $HOME/.conda/envs/python38 and installs the jupyter kernel in $HOME/.local/share/jupyter/kernels/python38.

Using conda in e.g. a shared project directory (work in progress)

Add the new conda environments dir to your conda config, for example:

source /opt/tljh/user/etc/profile.d/conda.sh
conda config --append envs_dirs /project/myfirstproject/conda/envs

Check via

conda config --get envs_dirs

or the contents of

$HOME/.condarc

To create a new conda environment there, you need to specify the whole path:

source /opt/tljh/user/etc/profile.d/conda.sh
conda create --prefix /project/myfirstproject/conda/envs/shared_python38 python=3.8
conda activate shared_python38
conda install ipykernel
python -m ipykernel install --user --name shared_python38 --display-name 'Python 3.8 (shared)'
Using python venv
python -m venv testing123
source testing123/bin/activate
pip install ipykernel
python -m ipykernel install --user --name testing123 --display-name 'Testing 1,2,3'

This creates a new python venv in $PWD/testing123 and installs the jupyter kernel in $HOME/.local/share/jupyter/kernels/testing123.

List/remove/etc the kernel

jupyter-kernelspec help
jupyter-kernelspec list
jupyter-kernelspec remove testing123

Removing environments

  • conda based:
conda env list
conda env remove -n python38
  • python venv based: remove the previously created testing123 python environment directory and its contents.
"rm -rf ${path_to_testing123}"