Your data science team needs to be able to share ideas and insights. You need to easily review notebooks and consult with other members. It is important to effectively present and demonstrate your work to business users and stakeholders. And your team’s results need to be repeatable. This article will help you quickly set up JupyterHub and JupyterLab for your team even if you are not in a MLOps role. The article uses a Docker image which you can download and use to get your team started. More stories follow on how the image was built and how to use collaboration features:
- Deploying Docker Based JupyterHub for Collaboration
- Building Docker Based JupyterHub for Collaborationium
- Using GitHub for Collaboration with JupyterLab
- Effective Documentation and Presentations with JupyterLab
Why Don’t Teams Succeed?
Building, testing and deploying models requires a lot of time and effort. And unfortunately, as VentureBeat reports, only 13% of models make it to production. The failure to realize value from the projects is often due to the disconnect between the data science team and the stakeholders. And the difficulty of sharing and communicating within the team. Team members must develop complex engineering processes, complete detailed research and often work in isolation. Teamwork and collaboration can be one of the most important factors in helping your team succeed.
Transparency is the foundation of collaborative development: The open and honest communication of plans, status and problems. Collaborative software can help facilitate transparency.
Collaborative Software
Collaborative software provides your team and stakeholders with a central platform to share knowledge and deliverables to complete projects. The important aspects are:
- Multi-user access
- User authentication
- Sharing work products
- Shared, standard environments
- Sharing status and changes
- Documenting and presenting results
There are a number of data science collaborative platforms including The Binder Project, Google Collaboratory, CoCalc, Databricks and Kaggle. If you are setting up a cloud or on-premise server for you team, JupyterHub is the most popular solution. JupyterHub is open source with a strong community so you will find lots of help if you have questions. JupyterHub bundles JupyterLab, a flagship project from Jupyter.
JupyterHub communicates with the user’s browser and provides a number of user authentication implementations. The hub spawns single user servers for notebooks with JupyterLab. And it supports the iPython kernel for notebook functions.

Installing JupyterHub
JupyterHub can be installed on a Linux/Unix server or virtual machine (see Installation — JupyterHub). Rather than spinning up an entire virtual machine, containerization packages can be used. Containers are small, fast and portable. Packages are available for a number of configurations and can save you a lot of effort. Examples of containerization software are Docker and Kubernetes.
Get Started
To get started with a JupyterHub in a Docker container you can download a package configured for collaboration. The package is configured with collaboration extensions and is easy to install and evaluate. More details are provided in: Deploying Docker Based JupyterHub for Collaboration.

No responses yet