crzdg / jupyiverse

Repository to handle everything around Jupyter.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

πŸͺπŸŒš jupyiverse

This repository contains my personally used configuration to handle my JupyterLab instances. It uses JupyterHub with a dockerspawner to handle the JupyterLab instances via Docker.

For JupyterLab a set of configurations for extensions can be found. Additionally, some Dockerfile including JupyterLab and a preset of dependencies.

πŸš€ Get started

  • Check out and understand jupyerhub_config.py
    • Adjust the volume mappings.
    • Adjust the device mappings.
    • Adjust the allowed images.
  • Create a directory for the users' work and home directory (user-data per default)
    • Handling of host and docker userids is not setup. JupyterLab containers do start with userid 1000.
    • You have to handle / setup permissions for folders by yourself.
  • Build the repos docker images.
    • make build-"fileextension", i.e. make build-cuda118-2204
  • Start the JupyterHub instance
    • docker compose up, daemon docker compose up -d

πŸͺπŸ—️ JupyterHub

  • Handling work and home directory for users
  • Simple dummyauthenticator (only use in personal networks!)
  • Using dockerspawner and images to spawn instance

πŸͺπŸ§ͺ JupyerLab

βž• Extensions

🎨 Themes

βš”οΈ Limitations

  • jupyterlab-lsp does currently not support formatting.
  • jupyterlab-lsp does currently not support the configuration of python-lsp-ruff
  • jupyterlab-code-formatter does currently not support the loading of config files
  • jupyterlab has problems with default viewers, there should be a more stable version with 4.0
  • jupyter-code-formatter does not support on save formatting in Jupytext Notebook, might be mitigated with 4.0

πŸ’¬ Language Servers

🐍 Python Environment

πŸ“¦ Packages

  • tensorflow
  • pytorch
  • matplotlib
  • scikit-learn
  • opencv-contrib-python

🚧 Development tools

  • black
  • isort
  • pylint

πŸ’» Development

Dependencies for development can be found in (requirements)[requirements/]

Add packages to JupyterHub and JupyterLab to there corresponding *.in file.

make pip-compile-jupyterhub
make pip-compile-jupyterlab

Rebuild the images.

About

Repository to handle everything around Jupyter.


Languages

Language:Python 75.2%Language:Makefile 19.2%Language:Dockerfile 5.6%