mirror of
https://github.com/sablierapp/sablier.git
synced 2025-12-21 13:23:03 +01:00
* feat(plugin): add `proxywasm` plugin The `proxywasm` plugin is a WASM Filter following the ProxyWasm ABI Specification using the proxywasm go sdk This allows extensibility with any reverse proxy who implements the ProxyWasm ABI Specification. The current WASM Filter was successfully tested with APISIX, Envoy, Nginx with ngx_wasm_module from Kong and Istio. Fixes #145
2.4 KiB
2.4 KiB
Reverse Proxy Plugins
What is a Reverse Proxy Plugin ?
Reverse proxy plugins are the integration with a reverse proxy.
?> Because Sablier is designed as an API that can be used on its own, reverse proxy integrations acts as a client of that API.
It leverages the API calls to plugin integration to catch in-flight requests to Sablier.
Available Reverse Proxies
| Reverse Proxy | Docker | Docker Swarm mode | Kubernetes |
|---|---|---|---|
| Apache APISIX | ✅ | ✅ | ✅ |
| Caddy | ✅ | ✅ | ❌ |
| Envoy | ✅ | ❓ | ❓ |
| Istio | ❌ | ❌ | ⚠️ |
| Nginx (NJS Module) | ✅ | ✅ | ✅ |
| Nginx (WASM Module) | ✅ | ❓ | ❓ |
| Traefik | ✅ | ✅ | ✅ |
| ProxyWasm | ✅ | ✅ | ✅ |
✅ Fully compatible
⚠️ Partially compatible
❓ Should be compatible (but not tested)
❌ Not compatible
Your Reverse Proxy is not on the list? Open an issue to request the missing reverse proxy integration here!
Runtime and Compiled plugins
Some reverse proxies have the capability to evaluate the plugins at runtime (Traefik with Yaegi, NGINX with Lua and JS plugins) which means the reverse proxy provides a way to consume the plugin directly.
Some others enforce you to rebuild your reverse proxy (Caddy).
