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

Akamai Linode

Akamai G8 Dedicated 16x4

4vCPU
16 GBRAM
160 GBStorage
—Transfer
  • Dedicated CPU
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.
Akamai Linode

Akamai G8 Dedicated 16x8

8vCPU
16 GBRAM
160 GBStorage
—Transfer
  • Dedicated CPU
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.
Akamai Linode

Akamai G8 Dedicated 32x16

16vCPU
32 GBRAM
320 GBStorage
—Transfer
  • Dedicated CPU
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.
Akamai Linode

Akamai G8 Dedicated 32x8

8vCPU
32 GBRAM
320 GBStorage
—Transfer
  • Dedicated CPU
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.
Akamai Linode

Akamai G8 Dedicated 4x2

2vCPU
4 GBRAM
40 GBStorage
—Transfer
  • Dedicated CPU
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.
Akamai Linode

Akamai G8 Dedicated 64x16

16vCPU
64 GBRAM
640 GBStorage
—Transfer
  • Dedicated CPU
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.
Akamai Linode

Akamai G8 Dedicated 64x32

32vCPU
64 GBRAM
640 GBStorage
—Transfer
  • Dedicated CPU
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.
Akamai Linode

Akamai G8 Dedicated 8x2

2vCPU
8 GBRAM
80 GBStorage
—Transfer
  • Dedicated CPU
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.
Akamai Linode

Akamai G8 Dedicated 8x4

4vCPU
8 GBRAM
80 GBStorage
—Transfer
  • Dedicated CPU
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.
Akamai Linode

Linode 128 GB (Shared CPU)

24vCPU
128 GBRAM
2,560 GBStorage
20 TBTransfer
  • Shared CPU
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.
Akamai Linode

Linode 16 GB (Shared CPU)

6vCPU
16 GBRAM
320 GBStorage
8 TBTransfer
  • Shared CPU
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.
Akamai Linode

Linode 192 GB (Shared CPU)

32vCPU
192 GBRAM
3,840 GBStorage
20 TBTransfer
  • Shared CPU
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.