Join our community Discord
, if you need some help.
Domain names
OneChart generates a KubernetesIngress
resource for the Nginx ingress controller with the following settings:
image:
repository: my-app
tag: 1.0.0
ingress:
annotations:
kubernetes.io/ingress.class: nginx
host: chart-example.local
Check the Kubernetes manifest:
cat << EOF > values.yaml
image:
repository: my-app
tag: 1.0.0
ingress:
annotations:
kubernetes.io/ingress.class: nginx
host: my-app.mycompany.com
EOF
helm template my-app onechart/onechart -f values.yaml
The Nginx ingress controller must be set up in your cluster for this setting to work. For other ingress controllers, please use the matching annotation.
HTTPS
To reference a TLS secret use the tlsEnabled
field. The deployment will point to a secret named: tls-$.Release.Name
cat << EOF > values.yaml
image:
repository: my-app
tag: 1.0.0
ingress:
annotations:
kubernetes.io/ingress.class: nginx
host: my-app.mycompany.com
tlsEnabled: true
EOF
helm template my-app onechart/onechart -f values.yaml
HTTPS - Let's Encrypt
If your cluster has Cert Manager running, you should add Cert Manager's annotation to have automated cert provisioning.
# values.yaml
image:
repository: my-app
tag: 1.0.0
ingress:
annotations:
kubernetes.io/ingress.class: nginx
+ cert-manager.io/cluster-issuer: letsencrypt
host: my-app.mycompany.com
tlsEnabled: true
Listening on multiple domains
cat << EOF > values.yaml
image:
repository: my-app
tag: 1.0.0
ingresses:
- host: one.mycompany.com
annotations:
kubernetes.io/ingress.class: nginx
tlsEnabled: true
- host: two.mycompany.com
annotations:
kubernetes.io/ingress.class: nginx
tlsEnabled: true
EOF
helm template my-app onechart/onechart -f values.yaml