Ingress
| Required secret | Overlay |
|---|---|
OPENAI_API_KEY, API_SERVER_KEY, WEBHOOK_SECRET |
values-ingress-listeners.yaml |
When to use it¶
Use this when the cluster has an Ingress controller. An API key, listener secrets, and a controller configuration appropriate for the selected hosts are required. To route the management dashboard, see Dashboard sign-in and Ingress: it shows API keys to whoever is signed in, so choose the sign-in method first.
Install¶
helm upgrade --install hermes-agent ./charts/hermes-agent \
--namespace hermes-agent --create-namespace \
-f charts/hermes-agent/values-ingress-listeners.yaml --wait
When an example requires more than one credential, pass every listed value with --set-string or use extraEnvFrom to reference an existing Secret.
Adapt before deploying¶
Set paths[].service only when using an external Service. When omitted, it
defaults to this release's Service and the path's port defaults to
service.port. The chart rejects an implicit chart-Service backend when
service.enabled: false.
For Gateway API clusters, use HTTPRoute instead. Both routing resources are off by default; choose the API operated by the cluster instead of enabling both for the same host and path.
Complete overlay¶
# values-ingress-listeners.yaml
#
# Routes Hermes' API server and generic webhook receiver through different
# Ingress hosts and Service ports. Create hermes-agent-listener-secrets with
# OPENAI_API_KEY, API_SERVER_KEY, and WEBHOOK_SECRET before installing. Do not
# commit real credentials.
#
# helm upgrade --install hermes-agent ./charts/hermes-agent \
# --namespace hermes-agent --create-namespace \
# -f charts/hermes-agent/values-ingress-listeners.yaml --wait
config:
model:
provider: openai-api
default: gpt-4o-mini
terminal:
backend: local
extraEnvFrom:
- secretRef:
name: hermes-agent-listener-secrets
apiServer:
enabled: true
host: 0.0.0.0
port: 8642
corsOrigins: "https://chat.example.com"
webhook:
enabled: true
port: 8644
service:
enabled: true
ports:
- name: api-server
port: 8642
- name: webhook
port: 8644
ingress:
enabled: true
className: nginx
hosts:
- host: api.example.com
paths:
- path: /v1
pathType: Prefix
port: 8642
- host: webhooks.example.com
paths:
- path: /
pathType: Prefix
port: 8644