mirror of
https://github.com/netbirdio/docs.git
synced 2026-04-21 18:06:38 +00:00
Add Reverse Proxy Templates + Wizard Instructions to Docs (#551)
* Add Reverse Proxy Templates + Wizard Instructions to Docs - Updated quickstart guide to include instructions on new reverse proxy wizard in setup script - Add new reverse proxy page including quickstart script instructions and templates - Updated advanced guide to refer to new reverse proxy page * Update lazy-connection documentation to clarify inactivity threshold configuration. from #452 * Added <Note> * Update lazy connection documentation to reflect new minimum supported agent version and server requirements. From PR#338 * traefik ssl amendments + nginx fixes * - add youtube video to self hosted quickstart guide page - clarify quickstart script reverse proxy wizard behaviour in advanced guide * added in-depth TLS instructions for nginx * add individual proxy hyperlinks to self hosted advanced guide --------- Co-authored-by: Brandon Hopkins <brandon@techhut.tv>
This commit is contained in:
@@ -197,56 +197,21 @@ docker compose logs dashboard
|
||||
|
||||
## Advanced: Running NetBird behind an existing reverse-proxy
|
||||
|
||||
If you want to run NetBird behind your own reverse-proxy, some additional configuration-steps have to be taken to [Step 2](#step-2--prepare-configuration-files).
|
||||
If you already have a reverse proxy (Traefik, Nginx, Caddy, etc.), you can configure NetBird to work with it instead of using the built-in Caddy.
|
||||
|
||||
<Note>
|
||||
Not all reverse-proxies are supported as NetBird uses *gRPC* for various components.
|
||||
Not all reverse proxies are supported as NetBird uses *gRPC* for various components. Your reverse proxy must support HTTP/2 and gRPC proxying.
|
||||
</Note>
|
||||
|
||||
### Configuration for NetBird
|
||||
**New deployments:** The `getting-started.sh` script can simplify the integration of NetBird into your existing reverse proxy setup by generating a drop-in config or bespoke instructions.
|
||||
|
||||
In `setup.env`:
|
||||
- Set ```NETBIRD_DOMAIN``` to your domain, e.g. `demo.netbird.io`
|
||||
- Set ```NETBIRD_DISABLE_LETSENCRYPT=true```
|
||||
- Add ```NETBIRD_MGMT_API_PORT``` to your reverse-proxy TLS-port (default: 443)
|
||||
- Add ```NETBIRD_SIGNAL_PORT``` to your reverse-proxy TLS-port
|
||||
**Existing deployments:** Use the configuration templates on the dedicated reverse proxy page.
|
||||
|
||||
Optional:
|
||||
- Add ```TURN_MIN_PORT``` and ```TURN_MAX_PORT``` to configure the port-range used by the Turn-server
|
||||
|
||||
<Note>
|
||||
The `coturn`-service still needs to be directly accessible under your set-domain as it uses UDP for communication.
|
||||
</Note>
|
||||
|
||||
Now you can continue with [Step 3](#step-3-configure-identity-provider-idp).
|
||||
|
||||
### Configuration for your reverse-proxy
|
||||
|
||||
Depending on your port-mappings and choice of reverse-proxy, how you configure the forwards differs greatly.
|
||||
|
||||
The following endpoints have to be setup:
|
||||
|
||||
Endpoint | Protocol | Target service and internal-port
|
||||
------------------------------- | --------- | --------------------------------
|
||||
/ | HTTP | dashboard:80
|
||||
/signalexchange.SignalExchange/ | gRPC | signal:80
|
||||
/ws-proxy/signal | WebSocket | signal:80
|
||||
/api | HTTP | management:443
|
||||
/management.ManagementService/ | gRPC | management:443
|
||||
/ws-proxy/management | WebSocket | management:443
|
||||
/relay | WebSocket | relay:33080
|
||||
:33080 (UDP) | QUIC | relay:33080 (direct or L4 proxy)
|
||||
|
||||
Make sure your reverse-Proxy is setup to use the HTTP2-Protocol when forwarding.
|
||||
|
||||
<Note>
|
||||
The relay service supports two transport options: WebSocket (via `/relay`) or QUIC over UDP on port 33080 (not HTTP/3). You only need to configure one - either the WebSocket endpoint through your reverse proxy, or direct UDP access for QUIC. QUIC cannot be proxied through typical HTTP reverse proxies and must either be exposed directly or proxied using an L4 (transport layer) proxy that supports UDP. Some reverse proxies may support QUIC proxying, but this typically requires specific configuration for the custom application protocol.
|
||||
</Note>
|
||||
|
||||
<Note>
|
||||
You can find helpful templates with the reverse-proxy-name as suffix (e.g. `docker-compose.yml.tmpl.traefik`)
|
||||
Simply replace the file `docker-compose.yml.tmpl` with the chosen version.
|
||||
</Note>
|
||||
See the [Reverse Proxy Configuration](/selfhosted/reverse-proxy) page for:
|
||||
- Complete configuration templates for [Traefik](/selfhosted/reverse-proxy#traefik), [Nginx](/selfhosted/reverse-proxy#nginx), [Caddy](/selfhosted/reverse-proxy#caddy-external), and [Nginx Proxy Manager](/selfhosted/reverse-proxy#nginx-proxy-manager)
|
||||
- Required routing endpoints and port mappings
|
||||
- Docker Compose examples for external proxies
|
||||
- Troubleshooting tips
|
||||
|
||||
## Advanced: Additional configurations for cloud providers
|
||||
|
||||
|
||||
Reference in New Issue
Block a user