### [JupyterLab](https://github.com/jupyterlab/jupyterlab)

> Handle: `jupyter`
> URL: [http://localhost:34101](http://localhost:34101)

[![PyPI version](https://badge.fury.io/py/jupyterlab.svg)](https://badge.fury.io/py/jupyterlab)
[![Downloads](https://static.pepy.tech/badge/jupyterlab/month)](https://pepy.tech/project/jupyterlab)
[![Build Status](https://github.com/jupyterlab/jupyterlab/workflows/Linux%20Tests/badge.svg)](https://github.com/jupyterlab/jupyterlab/actions?query=branch%3Amain+workflow%3A%22Linux+Tests%22)
[![Build Status](https://github.com/jupyterlab/jupyterlab/workflows/Windows%20Tests/badge.svg)](https://github.com/jupyterlab/jupyterlab/actions?query=branch%3Amain+workflow%3A%22Windows+Tests%22)
[![Documentation Status](https://readthedocs.org/projects/jupyterlab/badge/?version=stable)](http://jupyterlab.readthedocs.io/en/stable/)
[![Crowdin](https://badges.crowdin.net/jupyterlab/localized.svg)](https://crowdin.com/project/jupyterlab)
[![OpenSSF Best Practices](https://www.bestpractices.dev/projects/8675/badge)](https://www.bestpractices.dev/projects/8675)
[![OpenSSF Scorecard](https://api.scorecard.dev/projects/github.com/jupyterlab/jupyterlab/badge)](https://scorecard.dev/viewer/?uri=github.com/jupyterlab/jupyterlab)
[![GitHub](https://img.shields.io/badge/issue_tracking-github-blue.svg)](https://github.com/jupyterlab/jupyterlab/issues)
[![Discourse](https://img.shields.io/badge/help_forum-discourse-blue.svg)](https://discourse.jupyter.org/c/jupyterlab)
[![Gitter](https://img.shields.io/badge/social_chat-gitter-blue.svg)](https://gitter.im/jupyterlab/jupyterlab)
[![Gitpod](https://img.shields.io/badge/gitpod_editor-open-blue.svg)](https://gitpod.io/#https://github.com/jupyterlab/jupyterlab)

An extensible environment for interactive and reproducible computing, based on the
Jupyter Notebook and Architecture.

#### Starting

```bash
# [Optional] pre-build the image
harbor build jupyter

# Start the service
harbor up jupyter

# Open JupyterLab in the browser
harbor open jupyter
```

#### Configuration

Your notebooks are stored in the Harbor workspace, under the `jupyter` directory.

```bash
# Opens workspace folder in the File Manager
harbor jupyter workspace

# See workspace location,
# relative to $(harbor home)
harbor config get jupyter.workspace
```

Additionally, you can configure service to install additional packages.

```bash
# See deps help
# It's a manager for underlying array
harbor jupyter deps -h

# Add packages to install, supports the same
# specifier syntax as pip
harbor jupyter deps add numpy
harbor jupyter deps add SomeProject@git+https://git.repo/some_pkg.git@1.3.1
harbor jupyter deps add SomePackage[PDF,EPUB]==3.1.4

# Rebuilt the service image for dependencies
# to become available
harbor down
harbor build jupyter
harbor up jupyter
```

Apart from that, following options can be set via [`harbor config`](./3.-Harbor-CLI-Reference.md#harbor-config):

```bash
# The port on the host where JupyterLab will be available
HARBOR_JUPYTER_HOST_PORT       34101

# Image to use as a base for JupyterLab service
# Two requirements: have python and pip installed,
# can be any such image
HARBOR_JUPYTER_IMAGE           pytorch/pytorch:2.3.0-cuda12.1-cudnn8-runtime

# Location of the JupyterLab workspace on the host
# This is where service data is stored
# Should be either relative to $(harbor home) or an absolute path
HARBOR_JUPYTER_WORKSPACE       ./services/jupyter/workspace

# Extra dependencies to install in JupyterLab image
# semicolon-separated, will use pip to install them (so can use pip version specifiers)
HARBOR_JUPYTER_EXTRA_DEPS      
```


