Skip to main content

Interactive Session Dependencies

The interactive sessions described below have specific dependencies for their successful execution. For JupyterLab and Jupyter Notebook (version 7 and above), a Singularity container with an unprivileged NGINX is essential for proxying. Typically, this and other optional Singularity containers are located in a shared directory within the cluster. Additionally, a desktop environment and VNC Server are required to establish a basic desktop session.

Jupyter

JupyterLab Host

Starts a JupyterLab server in the specified host.

Dependencies:

  • JupyterLab, which can be loaded as a module or installed in a Conda environment. The workflow expects a command to load the Python environment with JupyterLab. If no command is provided, the workflow installs Conda, creates a Conda environment, and installs JupyterLab with the following commands:
    • conda install -c conda-forge jupyterlab -y
    • conda install nb_conda_kernels -y
    • conda install -c anaconda jinja2 -y
  • Docker or an unprivileged NGINX Singularity container is required to proxy the Jupyter Notebook server. For more information, see this Singularity definition file.

Jupyter Notebook Host

Starts a Jupyter Notebook server in the specified host.

Dependencies:

  • Jupyter Notebook, which can be loaded as a module or installed in a Conda environment. The workflow expects a command to load the Python environment with Jupyter Notebook. If no command is provided the workflow installs Conda, creates a Conda environment and installs Jupyter Notebook with the following commands:
    • conda install -c anaconda jupyter -y
    • conda install nb_conda_kernels -y
    • conda install -c anaconda jinja2 -y
  • If the version of Jupyter Notebook is 7 or higher, Docker or an unprivileged NGINX Singularity container is required to proxy the Jupyter Notebook server. For more information, see this Singularity definition file.

Jupyter Notebook Singularity

Starts a Jupyter Notebook server inside a user specified Singularity container.

Dependencies:

Jupyter Notebook Docker

Starts a Jupyter Notebook server inside a user specified Docker container.

Dependencies:

  • Docker

Remote Desktop

Remote desktop sessions require a desktop environment and a remote display protocol (VNC Server, NICE DCV, SCW, etc.). Additionally, if other software tools are installed in the host, such as RStudio or MATLAB, the interactive session can be configured to open these GUI tools at start time.

VNC Server

Starts a remote desktop server using VNC Server.

Dependencies:

  • VNC Server. For example:
    • dnf install tigervnc-server -y
    • dnf install python3 -y
  • Desktop environment. For example:
    • dnf groupinstall "Server with GUI" -y

NICE DCV Server

Starts a remote desktop server using NICE DCV.

Dependencies:

  • NICE DCV Server. Follow this link for installation instructions.
  • Desktop environment. For example:
    • dnf groupinstall "Server with GUI" -y

Scyld Cloud Workstation Server

Starts a remote desktop server using Scyld Cloud Workstation.

Dependencies:

  • Scyld Cloud Workstation. Follow this link for installation instructions.
  • Desktop environment. For example:
    • dnf groupinstall "Server with GUI" -y

Other

MATLAB Docker

Starts a MATLAB server inside a Docker container, see this link.

Dependencies:

  • Docker

This session could be converted to Singularity in which case it needs:

Open Visual Studio Code

Starts a VS Code server.

Dependencies:

Webshell

Starts a terminal. It does not require admin installation.