Setting up a dev environment#
It is possible to test the project locally without installing TLJH. Instead we use the jupyterhub
Python package.
Requirements#
Docker
is used as a Spawner
to start the user servers, and is then required to run the project locally.
Check out the official Docker documentation to know how to install Docker on your machine: https://docs.docker.com/install/linux/docker-ce/ubuntu/
Create a virtual environment#
Using conda
:
conda create -n plasma -c conda-forge python nodejs
conda activate plasma
Alternatively, with Python’s built in venv
module, you can create a virtual environment with:
python3 -m venv .
source bin/activate
Install the development requirements#
pip install -r dev-requirements.txt
# dev install of the plasma package
pip install -e tljh-plasma
# Install (https://github.com/jupyterhub/configurable-http-proxy)
npm -g install configurable-http-proxy
Pull the repo2docker Docker image#
User environments are built with repo2docker
running in a Docker container. To pull the Docker image:
docker pull quay.io/jupyterhub/repo2docker:main
Create a config file for the group list#
Create a config.yaml
file at the root of the repository with a list of groups your user belongs to.
For example:
plasma:
groups:
- docker
- adm
Run#
Finally, start jupyterhub
with the config in debug
mode:
python3 -m jupyterhub -f jupyterhub_config.py --debug
Open http://localhost:8000 in a web browser.