Webhook Relay can help you receive webhooks in your internal services. To achieve that you can either use sidecar approach or a standalone deployment. Since container is stateless and only requires your access key & secret, deploying and running it is extremely easy.
First, go to https://my.webhookrelay.com/tokens and create a token key & secret pair. Then, create a Kubernetes secret:
kubectl create secret generic webhookrelay-credentials --from-literal=key=[access key] --from-literal=secret=[access secret]
Once the secret is created, you can deploy webhookrelayd container either as a sidecar or a standalone container.
Webhookrelayd agent can be easily deployed as a sidecar. This way requests can be forwarded to the service through localhost:
Webhook Relay container can also work as standalone deployment:
If agent is deployed as a separate deployment, the output destination should then be a service name.
Repository can be found here: https://github.com/webhookrelay/webhook-demo.
Implements a Kubernetes ingress controller using tunnels to connect a Web Relay managed URL (https://yoursubdomain.webrelay.io) to a Kubernetes service based on ingress resources. Single ingress controller can manage multiple tunnels and route to multiple namespaces.
Deployment files and issue tracker is available on GitHub:
You can try out Web Relay ingress controller by creating a deployment from a hosted manifest, no clone or local install necessary.
What you do need:
- A Kubernetes cluster that has access to the Internet
kubectlconfigured with admin access to your cluster
relayCLI, installation instructions can be found here
To add Web Relay ingress controller to your cluster, run:
relay ingress init
Manifests are available here: https://github.com/webrelay/ingress/tree/master/deployment
- Creates deployment with the controller
- Creates cluster role and binding
- Generates access key and secret for the Web Relay server and supplies them as a Kubernetes secret
If RBAC isn’t enabled on your cluster (for example, if you’re on GKE with legacy authorization or Minikube without RBAC), run:
relay ingress init --no-rbac
You can also generate tokens through the Web UI here https://my.webhookrelay.com/tokens or
relay token createcommand on the CLI.
To remove it, either delete the namespace where it was deployed or use:
relay ingress reset