Skip to main content

Manage packages and environments

Nebari uses conda-store for managing and sharing reproducible environments (collection of specific packages and versions) on the platform.

đŸ”Ĩwarning

conda-store is the most reliable way to manage your packages and environments on Nebari.

Refrain from installing libraries directly in the notebook or through the terminal (outside a conda-store managed environment). These actions could lead to subtle and unforeseen problems with your environment.

Preliminary reading​

It's useful to understand basics of conda-store and how it builds on top of the conda ecosystem, to use it effectively in Nebari.

Nebari has conda-store integrated, and you can use it through the graphical UI.

Open conda-store web interface​

Conda Store WebUI interface

There are several options for navigating to conda-store:

  • From Nebari Home, click on "Environment Management" under "Services"
  • From JupyterLab, click on Nebari in the menu bar and go to "Environments"
  • From anywhere, go to URL: https://<your-nebari-domain>/conda-store

If not logged in to conda-store, click on the "Log in" button in th left sidebar and authenticate similar to the Nebari login. This is required to be able to access many conda-store features.

Create, edit, and manage environments​

Go through the following conda-store (UI) tutorials on using the graphical interface for various actions:

Default namespaces in Nebari​

A default Nebari deployment/instance has the following namespaces corresponding to Nebari groups:

  • analyst namespace - Users in the analyst group can view and admin group can view+edit the environments in this namespace
  • developer namespace - Users in the developer and admin groups can view+edit the environments in this namespace
  • nebari-git namespace - Everyone can view and admins can edit

As an individual user, you also have a personal namespace with the same name as your Nebari username.

ℹī¸note

If you can "view" an environment, you can use it.

Select environments in editors​

Instructions to select any environment you have access to in the following editing spaces:

  • JupyterLab - In a Jupyter Notebook, click on the "Select Kernel" dropdown in the top-left corner, and select the environment.

  • VS Code - Click on the ⚙ī¸ icon in the bottom-right to open Settings -> Command Palette, and type "Python: Select Interpreter" and press Enter to get the list of environments to select from.

  • Terminal - In the terminal window, you can use conda CLI commands like conda activate <namespace>-<environment_name> to activate the relevant environment and conda env list to view the list of available environments.

Special requirements​

Dask​

Include the nebari-dask metapackage in your environment to use Dask. This ensures you have the correct version of dask-gateway and the latest versions of dask and distributed libraries.

By default, the nebari-git-nebari-git-dask environment (available to everyone) can be used for basic Dask workflows.

JHub App Launcher​

Include the jhub-apps package in your environment to create apps using the JHub App Launcher. You will also need the relevant app development framework and other necessary packages in the environment.