jupyterhub-traefik-proxy


Namejupyterhub-traefik-proxy JSON
Version 1.1.0 PyPI version JSON
download
home_pagehttps://jupyterhub-traefik-proxy.readthedocs.io
SummaryJupyterHub proxy implementation with traefik
upload_time2023-06-06 07:04:24
maintainer
docs_urlNone
authorProject Jupyter Contributors
requires_python>=3.6
licenseBSD
keywords jupyter jupyterhub traefik proxy
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # JupyterHub Traefik Proxy

[![Documentation build status](https://img.shields.io/readthedocs/jupyterhub-traefik-proxy?logo=read-the-docs)](https://jupyterhub-traefik-proxy.readthedocs.org/en/latest/)
[![GitHub Workflow Status](https://github.com/jupyterhub/traefik-proxy/actions/workflows/test.yml/badge.svg)](https://github.com/jupyterhub/traefik-proxy/actions/workflows/test.yml)
[![Latest PyPI version](https://img.shields.io/pypi/v/jupyterhub-traefik-proxy?logo=pypi)](https://pypi.python.org/pypi/jupyterhub-traefik-proxy)
[![GitHub](https://img.shields.io/badge/issue_tracking-github-blue?logo=github)](https://github.com/jupyterhub/traefik-proxy/issues)
[![Discourse](https://img.shields.io/badge/help_forum-discourse-blue?logo=discourse)](https://discourse.jupyter.org/c/jupyterhub)
[![Gitter](https://img.shields.io/badge/social_chat-gitter-blue?logo=gitter)](https://gitter.im/jupyterhub/jupyterhub)

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 contains what JupyterHub need to
dynamically configure the routes of a [traefik](https://traefik.io) proxy
server! There are three implementations of the [JupyterHub proxy
API](https://jupyterhub.readthedocs.io/en/stable/reference/proxy.html),
depending on how traefik store its routing configuration.

For **smaller**, single-node deployments:

- TraefikFileProviderProxy

For **distributed** setups:

- TraefikEtcdProxy
- TraefikConsulProxy

## Installation

The [documentation](https://jupyterhub-traefik-proxy.readthedocs.io) contains a
[complete installation
guide](https://jupyterhub-traefik-proxy.readthedocs.io/en/latest/install.html)
with examples for the three different implementations.

- [For TraefikFileProviderProxy](https://jupyterhub-traefik-proxy.readthedocs.io/en/latest/file.html#example-setup)
- [For TraefikEtcdProxy](https://jupyterhub-traefik-proxy.readthedocs.io/en/latest/etcd.html#example-setup)
- [For TraefikConsulProxy](https://jupyterhub-traefik-proxy.readthedocs.io/en/latest/consul.html#example-setup)

## Running 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 file with:

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

            

Raw data

            {
    "_id": null,
    "home_page": "https://jupyterhub-traefik-proxy.readthedocs.io",
    "name": "jupyterhub-traefik-proxy",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.6",
    "maintainer_email": "",
    "keywords": "jupyter jupyterhub traefik proxy",
    "author": "Project Jupyter Contributors",
    "author_email": "jupyter@googlegroups.com",
    "download_url": "https://files.pythonhosted.org/packages/66/ae/4da951fac82b454cb3cd9e9dfdd64ca7253ecc348471865e7eca87aeddc0/jupyterhub-traefik-proxy-1.1.0.tar.gz",
    "platform": null,
    "description": "# JupyterHub Traefik Proxy\n\n[![Documentation build status](https://img.shields.io/readthedocs/jupyterhub-traefik-proxy?logo=read-the-docs)](https://jupyterhub-traefik-proxy.readthedocs.org/en/latest/)\n[![GitHub Workflow Status](https://github.com/jupyterhub/traefik-proxy/actions/workflows/test.yml/badge.svg)](https://github.com/jupyterhub/traefik-proxy/actions/workflows/test.yml)\n[![Latest PyPI version](https://img.shields.io/pypi/v/jupyterhub-traefik-proxy?logo=pypi)](https://pypi.python.org/pypi/jupyterhub-traefik-proxy)\n[![GitHub](https://img.shields.io/badge/issue_tracking-github-blue?logo=github)](https://github.com/jupyterhub/traefik-proxy/issues)\n[![Discourse](https://img.shields.io/badge/help_forum-discourse-blue?logo=discourse)](https://discourse.jupyter.org/c/jupyterhub)\n[![Gitter](https://img.shields.io/badge/social_chat-gitter-blue?logo=gitter)](https://gitter.im/jupyterhub/jupyterhub)\n\nWhen JupyterHub starts a server for a user, it will _dynamically configure a\nproxy server_ so that accessing `jupyterhub.example.com/user/<user>` routes to\nthe individual Jupyter server. This project contains what JupyterHub need to\ndynamically configure the routes of a [traefik](https://traefik.io) proxy\nserver! There are three implementations of the [JupyterHub proxy\nAPI](https://jupyterhub.readthedocs.io/en/stable/reference/proxy.html),\ndepending on how traefik store its routing configuration.\n\nFor **smaller**, single-node deployments:\n\n- TraefikFileProviderProxy\n\nFor **distributed** setups:\n\n- TraefikEtcdProxy\n- TraefikConsulProxy\n\n## Installation\n\nThe [documentation](https://jupyterhub-traefik-proxy.readthedocs.io) contains a\n[complete installation\nguide](https://jupyterhub-traefik-proxy.readthedocs.io/en/latest/install.html)\nwith examples for the three different implementations.\n\n- [For TraefikFileProviderProxy](https://jupyterhub-traefik-proxy.readthedocs.io/en/latest/file.html#example-setup)\n- [For TraefikEtcdProxy](https://jupyterhub-traefik-proxy.readthedocs.io/en/latest/etcd.html#example-setup)\n- [For TraefikConsulProxy](https://jupyterhub-traefik-proxy.readthedocs.io/en/latest/consul.html#example-setup)\n\n## Running tests\n\nThere are some tests that use _etcdctl_ command line client for etcd. Make sure\nto set environment variable `ETCDCTL_API=3` before running the tests, so that\nthe v3 API to be used, e.g.:\n\n```\n$ export ETCDCTL_API=3\n```\n\nYou can then run the all the test suite from the _traefik-proxy_ directory with:\n\n```\n$ pytest -v ./tests\n```\n\nOr you can run a specific test file with:\n\n```\n$ pytest -v ./tests/<test-file-name>\n```\n",
    "bugtrack_url": null,
    "license": "BSD",
    "summary": "JupyterHub proxy implementation with traefik",
    "version": "1.1.0",
    "project_urls": {
        "Documentation": "https://jupyterhub-traefik-proxy.readthedocs.io",
        "Homepage": "https://jupyterhub-traefik-proxy.readthedocs.io",
        "Source": "https://github.com/jupyterhub/traefik-proxy/",
        "Tracker": "https://github.com/jupyter/traefik-proxy/issues"
    },
    "split_keywords": [
        "jupyter",
        "jupyterhub",
        "traefik",
        "proxy"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "8b466ad7fad30599403df6395e8a56cae6a4a823d2a3ab4d489ecb7d2d1f839d",
                "md5": "43172ceeab2c2787ee3b70f2817b57ca",
                "sha256": "6972d8eb788274d1d541c11cc10764d94a6829843bdb15873b60e19519bd4d5c"
            },
            "downloads": -1,
            "filename": "jupyterhub_traefik_proxy-1.1.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "43172ceeab2c2787ee3b70f2817b57ca",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.6",
            "size": 26188,
            "upload_time": "2023-06-06T07:04:22",
            "upload_time_iso_8601": "2023-06-06T07:04:22.293447Z",
            "url": "https://files.pythonhosted.org/packages/8b/46/6ad7fad30599403df6395e8a56cae6a4a823d2a3ab4d489ecb7d2d1f839d/jupyterhub_traefik_proxy-1.1.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "66ae4da951fac82b454cb3cd9e9dfdd64ca7253ecc348471865e7eca87aeddc0",
                "md5": "3e4bbf5269749f178024d36bcd6926c3",
                "sha256": "9e67eb354165b9400fb5a01c4272b4c2073dbd81fbbcd4e766ea7a62fac12cde"
            },
            "downloads": -1,
            "filename": "jupyterhub-traefik-proxy-1.1.0.tar.gz",
            "has_sig": false,
            "md5_digest": "3e4bbf5269749f178024d36bcd6926c3",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.6",
            "size": 39370,
            "upload_time": "2023-06-06T07:04:24",
            "upload_time_iso_8601": "2023-06-06T07:04:24.048645Z",
            "url": "https://files.pythonhosted.org/packages/66/ae/4da951fac82b454cb3cd9e9dfdd64ca7253ecc348471865e7eca87aeddc0/jupyterhub-traefik-proxy-1.1.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-06-06 07:04:24",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "jupyterhub",
    "github_project": "traefik-proxy",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [],
    "lcname": "jupyterhub-traefik-proxy"
}
        
Elapsed time: 1.76028s