Application hosting

Hosting JupyterHub

JupyterHub provides multi-user access to separate notebook servers. Its official quick start lists Linux or Unix, Python 3.10 or newer, Node.js 12 or newer with npm for the pip installation path, and a supported authenticator. It gives no universal host CPU or RAM size because each user's notebook server adds workload-specific demand.

Min vCPU
Depends on workload
Min memory
Depends on workload
Min storage
Depends on workload

Must have

Hard prerequisites

  • The documented quick start requires a Linux/Unix system, Python 3.10 or newer, and Node.js 12 or newer with npm for the pip installation route.
  • The quick start also calls for HTTPS certificate and key plus a domain for a network-accessible installation; the default authenticator uses PAM.
  • Run notebook servers with JupyterLab 3 or newer or Jupyter Notebook 4 or newer.

Recommended

Documented guidance

No further general recommendations are published for this version.

Capacity depends on your workload

JupyterHub publishes no universal host sizing minimum in the reviewed installation pages. Size the Hub and each single-user server for the chosen spawner, concurrent users, kernels, datasets, and notebook workloads.

We only compare what providers publish. A RAM figure alone can't confirm compatibility or production capacity.

Deploy with

Supported paths

  • Install with pip and npm configurable-http-proxy
  • Install with conda-forge
  • Run the Hub in Docker or on a Linux/Unix server

The host must provide

Runtime

Operating system
Linux or Unix is officially supported; Windows is not supported by the defaults
Python
3.10 or newer in the current quick start
Node.js and npm
Node.js 12 or newer for the pip-based install; conda can install these dependencies
Authentication and TLS
Choose an authenticator and configure HTTPS for network access
Single-user environment
JupyterLab 3+ or Notebook 4+ when notebook servers share the installation environment

Storage

Persistent data

Plan persistent storage for user home directories, notebooks, environments, and datasets. The documentation does not give a fixed capacity figure; usage depends on the spawner and per-user data-retention policy.

Step by step

Plan a JupyterHub installation

  1. Select the deployment and spawner

    Choose a Linux or Unix deployment and decide whether single-user notebook servers run on the Hub machine, in containers, or through another spawner.

    Official instructions
  2. Install the Hub prerequisites

    For the pip route, install JupyterHub with Python and install configurable-http-proxy through npm. The conda route installs the Hub and proxy from conda-forge.

    Official instructions
  3. Restrict who can sign in

    Choose and configure an authenticator, explicitly define allowed users or groups, and configure TLS before making the Hub reachable over a network.

    Official instructions

Security

Before you go public

  • Do not expose the Hub without a deliberate authenticator and TLS configuration.
  • Explicitly restrict permitted users; access to the Hub can launch user-controlled notebook processes.
  • Keep the Hub service account, spawner permissions, and user data separated according to the deployment model.

Cost

Beyond the server price

  • JupyterHub is open-source software; operators supply the Hub host, per-user compute, persistent storage, networking, and backups.
  • Concurrent notebook servers and user-selected packages can dominate resources; no fixed per-user capacity is implied by the base installation requirements.

Matching plans

Plans with published evidence

Amazon Web Services

Amazon Lightsail · 2 vCPU / 2 GB

2vCPU
2 GBRAM
60 GBStorage
3 TBTransfer
  • Burstable vCPU
  • SSD
Compatibility unclear from published plan data

Meeting documented runtime prerequisites does not prove production capacity. Traffic, workloads, software configuration, and shared host limits are not measured here.

  • The documented quick start requires a Linux/Unix system, Python 3.10 or newer, and Node.js 12 or newer with npm for the pip installation route.This prerequisite has no comparable published plan field.
  • The quick start also calls for HTTPS certificate and key plus a domain for a network-accessible installation; the default authenticator uses PAM.This prerequisite has no comparable published plan field.
  • Run notebook servers with JupyterLab 3 or newer or Jupyter Notebook 4 or newer.This prerequisite has no comparable published plan field.
Amazon Web Services

Amazon Lightsail · 2 vCPU / 4 GB

2vCPU
4 GBRAM
80 GBStorage
4 TBTransfer
  • Burstable vCPU
  • SSD
Compatibility unclear from published plan data

Meeting documented runtime prerequisites does not prove production capacity. Traffic, workloads, software configuration, and shared host limits are not measured here.

  • The documented quick start requires a Linux/Unix system, Python 3.10 or newer, and Node.js 12 or newer with npm for the pip installation route.This prerequisite has no comparable published plan field.
  • The quick start also calls for HTTPS certificate and key plus a domain for a network-accessible installation; the default authenticator uses PAM.This prerequisite has no comparable published plan field.
  • Run notebook servers with JupyterLab 3 or newer or Jupyter Notebook 4 or newer.This prerequisite has no comparable published plan field.
Contabo

Contabo Cloud VPS 12

12vCPU
48 GBRAM
400 GBStorage
—Transfer
  • SSD
Compatibility unclear from published plan data

Meeting documented runtime prerequisites does not prove production capacity. Traffic, workloads, software configuration, and shared host limits are not measured here.

  • The documented quick start requires a Linux/Unix system, Python 3.10 or newer, and Node.js 12 or newer with npm for the pip installation route.This prerequisite has no comparable published plan field.
  • The quick start also calls for HTTPS certificate and key plus a domain for a network-accessible installation; the default authenticator uses PAM.This prerequisite has no comparable published plan field.
  • Run notebook servers with JupyterLab 3 or newer or Jupyter Notebook 4 or newer.This prerequisite has no comparable published plan field.
Contabo

Contabo Cloud VPS 16

16vCPU
64 GBRAM
500 GBStorage
—Transfer
  • SSD
Compatibility unclear from published plan data

Meeting documented runtime prerequisites does not prove production capacity. Traffic, workloads, software configuration, and shared host limits are not measured here.

  • The documented quick start requires a Linux/Unix system, Python 3.10 or newer, and Node.js 12 or newer with npm for the pip installation route.This prerequisite has no comparable published plan field.
  • The quick start also calls for HTTPS certificate and key plus a domain for a network-accessible installation; the default authenticator uses PAM.This prerequisite has no comparable published plan field.
  • Run notebook servers with JupyterLab 3 or newer or Jupyter Notebook 4 or newer.This prerequisite has no comparable published plan field.
Contabo

Contabo Cloud VPS 18

18vCPU
96 GBRAM
600 GBStorage
—Transfer
  • SSD
Compatibility unclear from published plan data

Meeting documented runtime prerequisites does not prove production capacity. Traffic, workloads, software configuration, and shared host limits are not measured here.

  • The documented quick start requires a Linux/Unix system, Python 3.10 or newer, and Node.js 12 or newer with npm for the pip installation route.This prerequisite has no comparable published plan field.
  • The quick start also calls for HTTPS certificate and key plus a domain for a network-accessible installation; the default authenticator uses PAM.This prerequisite has no comparable published plan field.
  • Run notebook servers with JupyterLab 3 or newer or Jupyter Notebook 4 or newer.This prerequisite has no comparable published plan field.
Contabo

Contabo Cloud VPS 4

4vCPU
8 GBRAM
100 GBStorage
—Transfer
  • SSD
Compatibility unclear from published plan data

Meeting documented runtime prerequisites does not prove production capacity. Traffic, workloads, software configuration, and shared host limits are not measured here.

  • The documented quick start requires a Linux/Unix system, Python 3.10 or newer, and Node.js 12 or newer with npm for the pip installation route.This prerequisite has no comparable published plan field.
  • The quick start also calls for HTTPS certificate and key plus a domain for a network-accessible installation; the default authenticator uses PAM.This prerequisite has no comparable published plan field.
  • Run notebook servers with JupyterLab 3 or newer or Jupyter Notebook 4 or newer.This prerequisite has no comparable published plan field.
Contabo

Contabo Cloud VPS 6

6vCPU
12 GBRAM
200 GBStorage
—Transfer
  • SSD
Compatibility unclear from published plan data

Meeting documented runtime prerequisites does not prove production capacity. Traffic, workloads, software configuration, and shared host limits are not measured here.

  • The documented quick start requires a Linux/Unix system, Python 3.10 or newer, and Node.js 12 or newer with npm for the pip installation route.This prerequisite has no comparable published plan field.
  • The quick start also calls for HTTPS certificate and key plus a domain for a network-accessible installation; the default authenticator uses PAM.This prerequisite has no comparable published plan field.
  • Run notebook servers with JupyterLab 3 or newer or Jupyter Notebook 4 or newer.This prerequisite has no comparable published plan field.
Contabo

Contabo Cloud VPS 8

8vCPU
24 GBRAM
300 GBStorage
—Transfer
  • SSD
Compatibility unclear from published plan data

Meeting documented runtime prerequisites does not prove production capacity. Traffic, workloads, software configuration, and shared host limits are not measured here.

  • The documented quick start requires a Linux/Unix system, Python 3.10 or newer, and Node.js 12 or newer with npm for the pip installation route.This prerequisite has no comparable published plan field.
  • The quick start also calls for HTTPS certificate and key plus a domain for a network-accessible installation; the default authenticator uses PAM.This prerequisite has no comparable published plan field.
  • Run notebook servers with JupyterLab 3 or newer or Jupyter Notebook 4 or newer.This prerequisite has no comparable published plan field.
DigitalOcean

Basic Droplet · 1 vCPU / 1 GB (Intel)

1vCPU
1 GBRAM
25 GBStorage
1 TBTransfer
  • Shared vCPU (Intel Xeon)
  • Standard SSD
Compatibility unclear from published plan data

Meeting documented runtime prerequisites does not prove production capacity. Traffic, workloads, software configuration, and shared host limits are not measured here.

  • The documented quick start requires a Linux/Unix system, Python 3.10 or newer, and Node.js 12 or newer with npm for the pip installation route.This prerequisite has no comparable published plan field.
  • The quick start also calls for HTTPS certificate and key plus a domain for a network-accessible installation; the default authenticator uses PAM.This prerequisite has no comparable published plan field.
  • Run notebook servers with JupyterLab 3 or newer or Jupyter Notebook 4 or newer.This prerequisite has no comparable published plan field.
DigitalOcean

Basic Droplet · 1 vCPU / 2 GB (Intel)

1vCPU
2 GBRAM
50 GBStorage
2 TBTransfer
  • Shared vCPU (Intel Xeon)
  • Standard SSD
Compatibility unclear from published plan data

Meeting documented runtime prerequisites does not prove production capacity. Traffic, workloads, software configuration, and shared host limits are not measured here.

  • The documented quick start requires a Linux/Unix system, Python 3.10 or newer, and Node.js 12 or newer with npm for the pip installation route.This prerequisite has no comparable published plan field.
  • The quick start also calls for HTTPS certificate and key plus a domain for a network-accessible installation; the default authenticator uses PAM.This prerequisite has no comparable published plan field.
  • Run notebook servers with JupyterLab 3 or newer or Jupyter Notebook 4 or newer.This prerequisite has no comparable published plan field.
DigitalOcean

Basic Regular Droplet · 2 vCPU / 4 GiB

2vCPU
4 GiBRAM
80 GiBStorage
4 TBTransfer
  • Shared CPU
  • SSD
Compatibility unclear from published plan data

Meeting documented runtime prerequisites does not prove production capacity. Traffic, workloads, software configuration, and shared host limits are not measured here.

  • The documented quick start requires a Linux/Unix system, Python 3.10 or newer, and Node.js 12 or newer with npm for the pip installation route.This prerequisite has no comparable published plan field.
  • The quick start also calls for HTTPS certificate and key plus a domain for a network-accessible installation; the default authenticator uses PAM.This prerequisite has no comparable published plan field.
  • Run notebook servers with JupyterLab 3 or newer or Jupyter Notebook 4 or newer.This prerequisite has no comparable published plan field.
DigitalOcean

Basic Regular Droplet · 4 vCPU / 8 GiB

4vCPU
8 GiBRAM
160 GiBStorage
5 TBTransfer
  • Shared CPU
  • SSD
Compatibility unclear from published plan data

Meeting documented runtime prerequisites does not prove production capacity. Traffic, workloads, software configuration, and shared host limits are not measured here.

  • The documented quick start requires a Linux/Unix system, Python 3.10 or newer, and Node.js 12 or newer with npm for the pip installation route.This prerequisite has no comparable published plan field.
  • The quick start also calls for HTTPS certificate and key plus a domain for a network-accessible installation; the default authenticator uses PAM.This prerequisite has no comparable published plan field.
  • Run notebook servers with JupyterLab 3 or newer or Jupyter Notebook 4 or newer.This prerequisite has no comparable published plan field.

Want the full monthly bill? Use the hosting cost calculator. It keeps unknown charges visible.