diff --git a/docs/source/reference/separate-proxy.md b/docs/source/reference/separate-proxy.md index db370c9c..5ac29356 100644 --- a/docs/source/reference/separate-proxy.md +++ b/docs/source/reference/separate-proxy.md @@ -2,7 +2,7 @@ ## Background -The thing which users directly connect to is the proxy, by default +The thing which users directly connect to is the proxy, which by default is `configurable-http-proxy`. The proxy either redirects users to the hub (for login and managing servers), or to their own single-user servers. Thus, as long as the proxy stays running, access to existing @@ -10,16 +10,15 @@ servers continues, even if the hub itself restarts or goes down. When you first configure the hub, you may not even realize this because the proxy is automatically managed by the hub. This is great -for getting started and even most use, but everytime you restart the -hub, all user connections also get restarted. But it's also simple to +for getting started and even most use-cases, although, everytime you restart the +hub, all user connections are also restarted. However, it is also simple to run the proxy as a service separate from the hub, so that you are free to reconfigure the hub while only interrupting users who are currently actively starting the hub. The default JupyterHub proxy is -[configurable-http-proxy](https://github.com/jupyterhub/configurable-http-proxy), -and that page has some docs. If you are using a different proxy, such -as Traefik, these instructions are probably not relevant to you. +[configurable-http-proxy](https://github.com/jupyterhub/configurable-http-proxy). If you are using a different proxy, such +as [Traefik](https://github.com/traefik/traefik), these instructions are probably not relevant to you. ## Configuration options @@ -40,9 +39,14 @@ set to the URL which the hub uses to connect _to the proxy's API_. ## Proxy configuration You need to configure a service to start the proxy. An example -command line for this is `configurable-http-proxy --ip=127.0.0.1 --port=8000 --api-ip=127.0.0.1 --api-port=8001 --default-target=http://localhost:8081 --error-target=http://localhost:8081/hub/error`. (Details for how to -do this is out of scope for this tutorial - for example it might be a -systemd service on within another docker cotainer). The proxy has no +command line argument for this is: + +```bash +$ configurable-http-proxy --ip=127.0.0.1 --port=8000 --api-ip=127.0.0.1 --api-port=8001 --default-target=http://localhost:8081 --error-target=http://localhost:8081/hub/error +``` + +(Details on how to do this is out of the scope of this tutorial. For example, it might be a +systemd service configured within another docker container). The proxy has no configuration files, all configuration is via the command line and environment variables. @@ -57,9 +61,9 @@ match the token given to `c.ConfigurableHTTPProxy.auth_token`. You should check the [configurable-http-proxy options](https://github.com/jupyterhub/configurable-http-proxy) to see -what other options are needed, for example SSL options. Note that -these are configured in the hub if the hub is starting the proxy - you -need to move the options to here. +what other options are needed, for example, SSL options. Note that +these options are configured in the hub if the hub is starting the proxy, so you +need to configure the options there. ## Docker image