A Docker image is a great way to get started with JupyterHub for your data science team. You can quickly evaluate the collaboration tools and then support the work of a large team. And if you need to customize the image, you can easily extend it. This article shows you how to deploy the JupyterHub for Collaboration image. For a list of all JupyterHub collaboration stories see Data Science Team Collaboration with JupyterHub.

The image has the following packages and extensions:

  • Anaconda to support multiple environments and provide popular data science libraries
  • JupyterHub/JupyterLab
  • JupyterLab Git to manage updates and sharing on GitHub
  • Support for reveal.js to produce slide shows
  • JupyterLab Table of Contents support
  • JupyterLab Spell Check
  • Interactive Matplotlib support for presentations
  • Support for adding new users

To deploy the image you will need to install Docker. Using a terminal or PowerShell you can pull the image from Docker Hub and run the image in a container named j4c using:

docker run -p 8000:8000 -d --name j4c / jeffgunderson/jupyterhub4collaboration

You should see the image running by selecting Containers in Docker Desktop.

The Desktop provides actions to view the JupyterHub log, open a terminal or start/stop the container. You can also view images and their properties.

Connect to the container in a browser using http://localhost:8000 and you should see the Sign in prompt:

Sign on with user admin, password default. This will present the JupyterHub Launcher where you can launch notebooks, consoles and other applications.

JupyterHub supports a number of user authentication methods. We are using the default PAM-based Authenticator, for logging in with container user accounts via a username and password. To add a new user, select File > Hub Control Panel > Admin:

When adding a new user, the user will have password default. You can change the password defined in the container user account. In a terminal or PowerShell start a bash shell:

docker exec -it j4c bash

and change the password with:

passwd username

To start using collaboration tools see:

To see how the Docker image was built: Building Docker Based JupyterHub for Collaboration

No responses yet

Leave a Reply

Your email address will not be published. Required fields are marked *