Giter Club home page Giter Club logo

nebari's Introduction

Nebari logo mark - text will be black in light color mode and white in dark color mode.

Your open source data science platform. Built for scale, designed for collaboration.


Information Links
Project License Nebari documentation PyPI conda version
Community GH discussions Open an issue Community guidelines
CI Kubernetes Tests Tests

Table of contents

โš ๏ธ Warning โš ๏ธ The project has recently been renamed from QHub to Nebari. If your deployment is still managed by qhub, performing an in place upgrade will IRREVOCABLY BREAK your deployment. This will cause you to lose any data stored on the platform, including but not limited to, NFS (file system) data, conda-store environments, Keycloak users and groups, etc. Make sure to back up your data before attempting an upgrade.

Automated data science platform. From JupyterHub to Cloud environments with Dask Gateway.

Nebari is an open source data platform that enables users to build and maintain cost-effective and scalable compute platforms on HPC or Kubernetes with minimal DevOps overhead.

This repository details the Nebari (Kubernetes) version.

Not sure what to choose? Check out our Setup Initialization page.

QHub HPC

The HPC version of Nebari is based on OpenHPC.

NOTE: The tool is currently under development. Curious? Check out the Nebari HPC repository.

Nebari

The Kubernetes version of Nebari uses Terraform, Helm, and GitHub Actions.

  • Terraform handles the build, change, and versioning of the infrastructure.
  • Helm helps to define, install, and manage Kubernetes resources.
  • GitHub Actions is used to automatically create commits when the configuration file (nebari-config.yaml) is rendered, as well as to kick off the deployment action.

Nebari aims to abstract all these complexities for its users. Hence, it is not necessary to know any of the technologies mentioned above to have your project successfully deployed.

TLDR: If you know GitHub and feel comfortable generating and using API keys, you should have all it takes to deploy and maintain your system without the need for a dedicated DevOps team. No need to learn Kubernetes, Terraform, or Helm.

Cloud Providers โ˜๏ธ

Nebari offers out-of-the-box support for the major public cloud providers: Digital Ocean, Amazon AWS, GCP, and Microsoft Azure. High-level illustration of Nebari architecture

Installation ๐Ÿ’ป

Pre-requisites

  • Operating System: Currently, Nebari supports development on macOS and Linux operating systems. Windows is NOT supported. However, we would welcome contributions that add and improve support for Windows.
  • You need Python >= 3.7 on your local machine or virtual environment to work on Nebari.
  • Adopting virtual environments (conda, pipenv or venv) is also encouraged.

Install Nebari

To install Nebari type the following commands in your command line:

  • Install using conda:

    conda install -c conda-forge nebari
    
    # if you prefer using mamba
    mamba install -c conda-forge nebari
  • Install using pip:

    pip install nebari

Once finished, you can check Nebari's version (and additional CLI arguments) by typing:

nebari --help

If successful, the CLI output will be similar to the following:

usage: nebari [-h] [-v] {deploy,destroy,render,init,validate} ...

Nebari command line

positional arguments:
  {deploy,destroy,render,init,validate}
                        Nebari

optional arguments:
  -h, --help            show this help message and exit
  -v, --version         Nebari version

Usage ๐Ÿš€

Nebari requires setting multiple environment variables to automate the deployments fully. For details on obtaining those variables, check the Nebari Get started documentation.

Once all the necessary credentials are gathered and set as UNIX environment variables, Nebari can be deployed in minutes.

For detailed step-by-step instructions on how to deploy Nebari, check the Nebari documentation.

Contributing to Nebari ๐Ÿ‘ฉ๐Ÿปโ€๐Ÿ’ป

Thinking about contributing? Check out our Contribution Guidelines to get started.

Installing the Development version of Nebari โš™๏ธ

To install the latest developer version (unstable) use:

pip install git+https://github.com/nebari-dev/nebari.git

Questions? ๐Ÿค”

Have a look at our Frequently Asked Questions (FAQ) to see if your query has been answered.

Getting help:

  • GitHub Discussions is our user forum. It can be used to raise discussions about a subject, such as: "What is the recommended way to do X with Nebari?"
  • Issues for queries, bug reporting, feature requests, documentation, etc.

We work around the clock to make Nebari better, but sometimes your query might take a while to get a reply. We apologize in advance and ask you to please, be patient ๐Ÿ™.

Code of Conduct ๐Ÿ“–

To guarantee a welcoming and friendly community, we require all community members to follow our Code of Conduct.

Ongoing Support

The v0.4.0 release introduced many changes that will irrevocably break your deployment if you attempt an in-place upgrade; for details, see our RELEASE notes. To focus on the future direction of the project, we have decided as a team that we will provide limited support for older versions. Any new user is encouraged to use v0.4.0 or greater.

If you're using an older version of Nebari and would like professional support, please get in touch with the Nebari development team.

License

Nebari is BSD3 licensed.

nebari's People

Contributors

adam-d-lewis avatar aktech avatar alimanfoo avatar anirrudh avatar costrouc avatar danlester avatar dependabot[bot] avatar dharhas avatar filippo82 avatar ftarlaci avatar gabalafou avatar harshcasper avatar iameskild avatar imgbot[bot] avatar jkellndorfer avatar laisbsc avatar nebari-sensei avatar peytondmurray avatar pierrotsmnrd avatar prasunanand avatar rajatgoyal avatar tarundmsharma avatar tjcrone avatar tonyfast avatar toonarmycaptain avatar trallard avatar tylerpotts avatar utabe avatar viniciusdc avatar yuvipanda avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.