Files
Homelabv4/charts/envoy-gateway/README.md
T
Scooby HuskyandClaude Opus 4.6 8bde33f4d1 Remove nessus app and fix envoy-gateway OCI chart bug
- Delete nessus Application CRD, manifests, and bootstrap script
- Vendor envoy-gateway Helm chart (v1.6.3) locally to work around
  ArgoCD v3.3.3 Docker Hub OCI resolution bug
- Re-enable auto-sync for envoy-gateway

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-10 19:41:36 -05:00

6.4 KiB

gateway-helm

Version: v0.0.0-latest Type: application AppVersion: latest

The Helm chart for Envoy Gateway

Homepage: https://gateway.envoyproxy.io/

Maintainers

Name Email Url
envoy-gateway-steering-committee https://github.com/envoyproxy/gateway/blob/main/GOVERNANCE.md
envoy-gateway-maintainers https://github.com/envoyproxy/gateway/blob/main/CODEOWNERS

Source Code

Usage

Helm must be installed to use the charts. Please refer to Helm's documentation to get started.

Install from DockerHub

Once Helm has been set up correctly, install the chart from dockerhub:

helm install eg oci://docker.io/envoyproxy/gateway-helm --version v0.0.0-latest -n envoy-gateway-system --create-namespace

You can find all helm chart release in Dockerhub

Install from Source Code

You can also install the helm chart from the source code:

To install the eg chart along with Gateway API CRDs and Envoy Gateway CRDs:

make kube-deploy TAG=latest

Skip install CRDs

You can install the eg chart along without Gateway API CRDs and Envoy Gateway CRDs, make sure CRDs exist in Cluster first if you want to skip to install them, otherwise EG may fail to start:

helm install eg --create-namespace oci://docker.io/envoyproxy/gateway-helm --version v0.0.0-latest -n envoy-gateway-system --skip-crds

To uninstall the chart:

helm uninstall eg -n envoy-gateway-system

Values

Key Type Default Description
certgen object {"job":{"affinity":{},"annotations":{},"args":[],"nodeSelector":{},"pod":{"annotations":{},"labels":{}},"resources":{},"securityContext":{"allowPrivilegeEscalation":false,"capabilities":{"drop":["ALL"]},"privileged":false,"readOnlyRootFilesystem":true,"runAsGroup":65532,"runAsNonRoot":true,"runAsUser":65532,"seccompProfile":{"type":"RuntimeDefault"}},"tolerations":[],"ttlSecondsAfterFinished":30},"rbac":{"annotations":{},"labels":{}}} Certgen is used to generate the certificates required by EnvoyGateway. If you want to construct a custom certificate, you can generate a custom certificate through Cert-Manager before installing EnvoyGateway. Certgen will not overwrite the custom certificate. Please do not manually modify values.yaml to disable certgen, it may cause EnvoyGateway OIDC,OAuth2,etc. to not work as expected.
config.envoyGateway object {"extensionApis":{},"gateway":{"controllerName":"gateway.envoyproxy.io/gatewayclass-controller"},"logging":{"level":{"default":"info"}},"provider":{"type":"Kubernetes"}} EnvoyGateway configuration. Visit https://gateway.envoyproxy.io/docs/api/extension_types/#envoygateway to view all options.
createNamespace bool false
deployment.annotations object {}
deployment.envoyGateway.image.repository string ""
deployment.envoyGateway.image.tag string ""
deployment.envoyGateway.imagePullPolicy string ""
deployment.envoyGateway.imagePullSecrets list []
deployment.envoyGateway.resources.limits.memory string "1024Mi"
deployment.envoyGateway.resources.requests.cpu string "100m"
deployment.envoyGateway.resources.requests.memory string "256Mi"
deployment.envoyGateway.securityContext.allowPrivilegeEscalation bool false
deployment.envoyGateway.securityContext.capabilities.drop[0] string "ALL"
deployment.envoyGateway.securityContext.privileged bool false
deployment.envoyGateway.securityContext.runAsGroup int 65532
deployment.envoyGateway.securityContext.runAsNonRoot bool true
deployment.envoyGateway.securityContext.runAsUser int 65532
deployment.envoyGateway.securityContext.seccompProfile.type string "RuntimeDefault"
deployment.pod.affinity object {}
deployment.pod.annotations."prometheus.io/port" string "19001"
deployment.pod.annotations."prometheus.io/scrape" string "true"
deployment.pod.labels object {}
deployment.pod.nodeSelector object {}
deployment.pod.tolerations list []
deployment.pod.topologySpreadConstraints list []
deployment.ports[0].name string "grpc"
deployment.ports[0].port int 18000
deployment.ports[0].targetPort int 18000
deployment.ports[1].name string "ratelimit"
deployment.ports[1].port int 18001
deployment.ports[1].targetPort int 18001
deployment.ports[2].name string "wasm"
deployment.ports[2].port int 18002
deployment.ports[2].targetPort int 18002
deployment.ports[3].name string "metrics"
deployment.ports[3].port int 19001
deployment.ports[3].targetPort int 19001
deployment.priorityClassName string nil
deployment.replicas int 1
global.imagePullSecrets list [] Global override for image pull secrets
global.imageRegistry string "" Global override for image registry
global.images.envoyGateway.image string nil
global.images.envoyGateway.pullPolicy string nil
global.images.envoyGateway.pullSecrets list []
global.images.ratelimit.image string "docker.io/envoyproxy/ratelimit:3fb70258"
global.images.ratelimit.pullPolicy string "IfNotPresent"
global.images.ratelimit.pullSecrets list []
hpa.behavior object {}
hpa.enabled bool false
hpa.maxReplicas int 1
hpa.metrics list []
hpa.minReplicas int 1
kubernetesClusterDomain string "cluster.local"
podDisruptionBudget.minAvailable int 0
service.annotations object {}
service.trafficDistribution string ""
service.type string "ClusterIP"
topologyInjector.annotations object {}
topologyInjector.enabled bool true