Skip to main content

JupyterHub Traefik Proxy

Documentation build status GitHub Workflow Status Latest PyPI version GitHub Discourse Gitter

When JupyterHub starts a server for a user, it will dynamically configure a proxy server so that accessing jupyterhub.example.com/user/<user> routes to the individual Jupyter server. This project enables JupyterHub to dynamically configure the routes of a traefik proxy server!

There are two main implementations of the JupyterHub proxy API, depending on how traefik stores its routing configuration.

For smaller, single-node deployments:

  • TraefikFileProviderProxy

For distributed setups:

  • TraefikRedisProxy

Other implementations are maintained on a best-effort basis due to a lack of well-maintained Python clients:

  • TraefikEtcdProxy
  • TraefikConsulProxy

Installation

The documentation contains a complete installation guide with examples for all implementations, including the recommended TraefikRedisProxy.

Running tests

You can then run the all the test suite from the traefik-proxy directory with:

$ pytest

Or you can run a specific test file with:

$ pytest tests/<test-file-name>

There are some tests that use etcdctl command line client for etcd. Make sure to set environment variable ETCDCTL_API=3 before running the tests if etcd version 3.3 or older is used, so that the v3 API to be used, e.g.:

$ export ETCDCTL_API=3

Release files for jupyterhub-traefik-proxy 2.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for jupyterhub-traefik-proxy 2.1.0
File Size Uploaded
jupyterhub_traefik_proxy-2.1.0.tar.gz 43.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for jupyterhub-traefik-proxy 2.1.0
File Interpreter ABI Platform
jupyterhub_traefik_proxy-2.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 72.1 kB

Release files / jupyterhub_traefik_proxy-2.1.0.tar.gz

Download URL jupyterhub_traefik_proxy-2.1.0.tar.gz
Size 43.2 kB
Tags Source
SHA-256 checksum
How to use checksums
b9ba2c4f120f9fc9c4ce6dc8340f216876ca94b00d3a74fb8213377edf0222f0
BLAKE2b-256 checksum
How to use checksums
beeaebef27612b355e2235811b52b0920273e432a22922fa16386f33ce6f0784
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.9

Release files / jupyterhub_traefik_proxy-2.1.0-py3-none-any.whl

Download URL jupyterhub_traefik_proxy-2.1.0-py3-none-any.whl
Size 28.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
7b25a659bc56c0c9061c4646039184283e855cde42312ea3da39998a050a3c79
BLAKE2b-256 checksum
How to use checksums
e74181ca4b891d72f77918595b96cc5a22c699332e7953ecfe43858c1840b3c2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.9
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page