A JupyterLab extension accompanying the PyPI package jupyter-server-proxy adding launcher items for configured server processes.
Project description
Jupyter Server Proxy
Jupyter Server Proxy lets you run arbitrary external processes (such as
RStudio, Shiny Server, Syncthing, PostgreSQL, Code Server, etc)
alongside your notebook server and provide authenticated web access to
them using a path like /rstudio
next to others like /lab
. Alongside
the python package that provides the main functionality, the JupyterLab
extension (@jupyterhub/jupyter-server-proxy
) provides buttons in the
JupyterLab launcher window to get to RStudio for example.
Note: This project used to be called nbserverproxy. As nbserverproxy is an older version of jupyter-server-proxy, uninstall nbserverproxy before installing jupyter-server-proxy to avoid conflicts.
The primary use cases are:
- Use with JupyterHub / Binder to allow launching users into web interfaces that have nothing to do with Jupyter - such as RStudio, Shiny, or OpenRefine.
- Allow access from frontend javascript (in classic notebook or JupyterLab extensions) to access web APIs of other processes running locally in a safe manner. This is used by the JupyterLab extension for dask.
The documentation contains information on installation & usage.
Security warning
Jupyter Server Proxy is often used to start a user defined process listening to
some network port (e.g. http://localhost:4567
) for a user starting a Jupyter Server
that only that user has permission to access. The user can then access the
started process proxied through the Jupyter Server.
For safe use of Jupyter Server Proxy, you should ensure that the process started by Jupyter Server proxy can't be accessed directly by another user and bypass the Jupyter Server's authorization!
A common strategy to enforce access proxied via Jupyter Server is to start Jupyter Server within a container and only allow network access to the Jupyter Server via the container.
For more insights, see Ryan Lovett's comment about it.
Install
Requirements
Either jupyterlab>=3
or notebook
is required.
Python package
pip
pip install jupyter-server-proxy
conda
conda install jupyter-server-proxy -c conda-forge
JupyterLab extension
A JupyterLab extension is bundled with the Python package to provide launch buttons in JupyterLab's Launcher panel for registered server processes.
Clicking on them opens the proxied application in a new browser window.
Disable
Server extension
jupyter serverextension disable --sys-prefix jupyter_server_proxy
jupyter server extension disable --sys-prefix jupyter_server_proxy
Notebook classic extension
jupyter nbextension disable --sys-prefix --py jupyter_server_proxy
JupyterLab extension
jupyter labextension disable @jupyterhub/jupyter-server-proxy
Local development
To setup a local development environment, see the contributing guide.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file jupyter_server_proxy-4.0.0.tar.gz
.
File metadata
- Download URL: jupyter_server_proxy-4.0.0.tar.gz
- Upload date:
- Size: 130.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | f5dc12dd204baca71b013df3522c14403692a2d37cb7adcd77851dbab71533b5 |
|
MD5 | 6dd6843596ade1ad69bb69ba716951b8 |
|
BLAKE2b-256 | 0ab6c9e6b1e6bd84e43811e533a54f20e44537461f0b689198ff53374b58ab21 |
File details
Details for the file jupyter_server_proxy-4.0.0-py3-none-any.whl
.
File metadata
- Download URL: jupyter_server_proxy-4.0.0-py3-none-any.whl
- Upload date:
- Size: 32.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8075afce3465a5e987e43ec837c307f9b9ac7398ebcff497abf1f51303d23470 |
|
MD5 | 796bc023f87888e1d60dd3a59a536315 |
|
BLAKE2b-256 | 91405a8c2128f5efebe4eff29e0d3d92dac4d8f760f2e5bb584f5800e51fd230 |