Skip to content

minrk/traefik-proxy

 
 

JupyterHub Traefik Proxy

Build Status Documentation Status

An implementation of the JupyterHub proxy api with traefik: an extremely lightweight, portable reverse proxy implementation, that supports load balancing and can configure itself automatically and dynamically.

There are three versions for the proxy, depending on how traefik stores the routes:

  • for smaller, single-node deployments:
    • TraefikTomlProxy
  • for distributed setups:
    • TraefikEtcdProxy
    • TraefikConsulProxy

Instalation

You can find a complete installation guide here.

Documentation

The latest documentation is available at: https://jupyterhub-traefik-proxy.readthedocs.io/en/latest/.

Running the tests

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, so that the v3 API to be used, e.g.:

$ export ETCDCTL_API=3

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

$ pytest -v ./tests

Or you can run a specific test with:

$ pytest -v ./tests/<test-file-name>

Example setups:

JupyterHub configuration examples

You can use the configuration examples in the examples directory in order to configure JupyterHub to run with TraefikProxy.

About

JupyterHub proxy implementation with traefik

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Jupyter Notebook 94.0%
  • Python 5.9%
  • Shell 0.1%