DirectorySecurity AdvisoriesPricing
Sign in
Directory
k8s-gateway logoHELM

k8s-gateway

Helm chart
Last changed
Request a free trial

Contact our team to test out this Helm chart and related images for free. Please also indicate any other images you would like to evaluate.

Overview
Chart tags
Default values
Chart metadata
Images

Tag:
Compare:

1
# Default values for coredns k8s gateway.
2
# This is a YAML-formatted file.
3
# Declare variables to be passed into your templates.
4
5
image:
6
registry: cgr.dev
7
repository: chainguard-private/k8s_gateway
8
# Overrides the image tag whose default is the chart appVersion.
9
tag: 1.8.2-r16@sha256:099c004ed7f895c28ac3c905bf4334f8905fd1f93f3db97c594d489fdc691f1d
10
pullPolicy: IfNotPresent
11
## Optionally specify an array of imagePullSecrets.
12
## Secrets must be manually created in the namespace.
13
## ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/
14
##
15
pullSecrets: []
16
# pullSecrets:
17
# - name: myRegistryKeySecretName
18
replicaCount: 1
19
rbac:
20
# If true, create & use RBAC resources
21
create: true
22
resources:
23
limits:
24
cpu: 100m
25
memory: 128Mi
26
requests:
27
cpu: 100m
28
memory: 128Mi
29
rollingUpdate:
30
maxUnavailable: 1
31
maxSurge: 25%
32
terminationGracePeriodSeconds: 30
33
podAnnotations: {}
34
podLabels: {}
35
serviceType: "LoadBalancer"
36
prometheus:
37
service:
38
enabled: false
39
annotations:
40
prometheus.io/scrape: "true"
41
selector: {}
42
monitor:
43
enabled: false
44
additionalLabels: {}
45
namespace: ""
46
interval: ""
47
scrapeTimeout: ""
48
scheme: ""
49
honorLabels: false
50
tlsConfig: {}
51
relabelings: []
52
metricRelabelings: []
53
selector: {}
54
service:
55
# clusterIP: ""
56
# clusterIPs: []
57
# loadBalancerIP: ""
58
# loadBalancerClass: ""
59
# externalIPs: []
60
# externalTrafficPolicy: ""
61
# ipFamilyPolicy: ""
62
# trafficDistribution: PreferClose
63
# The name of the Service
64
# If not set, a name is generated using the fullname template
65
name: ""
66
annotations: {}
67
# Pod selector
68
selector: {}
69
serviceAccount:
70
create: true
71
# The name of the ServiceAccount to use
72
# If not set and create is true, a name is generated using the fullname template
73
name: ""
74
annotations: {}
75
# Optional priority class to be used for the coredns k8s gateway pods.
76
priorityClassName: ""
77
# Configure the pod level securityContext.
78
podSecurityContext: {}
79
# Configure SecurityContext for Pod.
80
securityContext: {}
81
# Default zone is what Kubernetes recommends:
82
# https://kubernetes.io/docs/tasks/administer-cluster/dns-custom-nameservers/#coredns-configmap-options
83
servers:
84
- zones:
85
- zone: .
86
use_tcp: true
87
port: 53
88
# -- expose the service on a different port
89
# servicePort: 5353
90
# If serviceType is nodePort you can specify nodePort here
91
# nodePort: 30053
92
# hostPort: 53
93
plugins:
94
- name: errors
95
# Serves a /health endpoint on :8080, required for livenessProbe
96
- name: health
97
configBlock: |-
98
lameduck 10s
99
# Serves a /ready endpoint on :8181, required for readinessProbe
100
- name: ready
101
# Required to query kubernetes API for data
102
- name: k8s_gateway
103
parameters: example.com
104
configBlock: |-
105
apex dns.example.com
106
ttl 30
107
resources Service HTTPRoute
108
fallthrough in-addr.arpa ip6.arpa
109
# Serves a /metrics endpoint on :9153, required for serviceMonitor
110
- name: prometheus
111
parameters: 0.0.0.0:9153
112
- name: forward
113
parameters: . /etc/resolv.conf
114
- name: cache
115
parameters: 30
116
- name: loop
117
- name: reload
118
- name: loadbalance
119
# Complete example with all the options:
120
# - zones: # the `zones` block can be left out entirely, defaults to "."
121
# - zone: hello.world. # optional, defaults to "."
122
# scheme: tls:// # optional, defaults to "" (which equals "dns://" in CoreDNS k8s gateway)
123
# - zone: foo.bar.
124
# scheme: dns://
125
# use_tcp: true # set this parameter to optionally expose the port on tcp as well as udp for the DNS protocol
126
# # Note that this will not work if you are also exposing tls or grpc on the same server
127
# port: 12345 # optional, defaults to "" (which equals 53 in CoreDNS k8s gateway)
128
# plugins: # the plugins to use for this server block
129
# - name: k8s_gateway # name of plugin, if used multiple times ensure that the plugin supports it!
130
# parameters: foo bar # list of parameters after the plugin
131
# configBlock: |- # if the plugin supports extra block style config, supply it here
132
# hello world
133
# foo bar
134
135
# Extra configuration that is applied outside of the default zone block.
136
# Example to include additional config files, which may come from extraVolumes:
137
# extraConfig:
138
# import:
139
# parameters: /opt/coredns/*.conf
140
extraConfig: {}
141
# To use the livenessProbe, the health plugin needs to be enabled in CoreDNS k8s gateway' server config
142
livenessProbe:
143
enabled: true
144
initialDelaySeconds: 60
145
periodSeconds: 10
146
timeoutSeconds: 5
147
failureThreshold: 5
148
successThreshold: 1
149
# To use the readinessProbe, the ready plugin needs to be enabled in CoreDNS k8s gateway' server config
150
readinessProbe:
151
enabled: true
152
initialDelaySeconds: 30
153
periodSeconds: 5
154
timeoutSeconds: 5
155
failureThreshold: 1
156
successThreshold: 1
157
# expects input structure as per specification https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.11/#affinity-v1-core
158
# for example:
159
# affinity:
160
# nodeAffinity:
161
# requiredDuringSchedulingIgnoredDuringExecution:
162
# nodeSelectorTerms:
163
# - matchExpressions:
164
# - key: foo.bar.com/role
165
# operator: In
166
# values:
167
# - master
168
affinity: {}
169
# expects input structure as per specification https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.21/#topologyspreadconstraint-v1-core
170
# and supports Helm templating.
171
# For example:
172
# topologySpreadConstraints:
173
# - labelSelector:
174
# matchLabels:
175
# app.kubernetes.io/name: '{{ template "k8s-gateway.name" . }}'
176
# app.kubernetes.io/instance: '{{ .Release.Name }}'
177
# topologyKey: topology.kubernetes.io/zone
178
# maxSkew: 1
179
# whenUnsatisfiable: ScheduleAnyway
180
# - labelSelector:
181
# matchLabels:
182
# app.kubernetes.io/name: '{{ template "k8s-gateway.name" . }}'
183
# app.kubernetes.io/instance: '{{ .Release.Name }}'
184
# topologyKey: kubernetes.io/hostname
185
# maxSkew: 1
186
# whenUnsatisfiable: ScheduleAnyway
187
topologySpreadConstraints: []
188
# Node labels for pod assignment
189
# Ref: https://kubernetes.io/docs/user-guide/node-selection/
190
nodeSelector: {}
191
# expects input structure as per specification https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.11/#toleration-v1-core
192
# for example:
193
# tolerations:
194
# - key: foo.bar.com/role
195
# operator: Equal
196
# value: master
197
# effect: NoSchedule
198
tolerations: []
199
# https://kubernetes.io/docs/tasks/run-application/configure-pdb/#specifying-a-poddisruptionbudget
200
podDisruptionBudget: {}
201
# configure custom zone files as per https://coredns.io/2017/05/08/custom-dns-entries-for-kubernetes/
202
zoneFiles: []
203
# - filename: example.db
204
# domain: example.com
205
# contents: |
206
# example.com. IN SOA sns.dns.icann.com. noc.dns.icann.com. 2015082541 7200 3600 1209600 3600
207
# example.com. IN NS b.iana-servers.net.
208
# example.com. IN NS a.iana-servers.net.
209
# example.com. IN A 192.168.99.102
210
# *.example.com. IN A 192.168.99.102
211
212
# optional array of sidecar containers
213
extraContainers: []
214
# - name: some-container-name
215
# image: some-image:latest
216
# imagePullPolicy: Always
217
# optional array of extra volumes to create
218
extraVolumes: []
219
# - name: some-volume-name
220
# emptyDir: {}
221
# optional array of mount points for extraVolumes
222
extraVolumeMounts: []
223
# - name: some-volume-name
224
# mountPath: /etc/wherever
225
226
# optional array of secrets to mount inside coredns k8s gateway container
227
# possible usecase: need for secure connection with etcd backend
228
extraSecrets: []
229
# - name: etcd-client-certs
230
# mountPath: /etc/coredns/tls/etcd
231
# defaultMode: 420
232
# - name: some-fancy-secret
233
# mountPath: /etc/wherever
234
# defaultMode: 440
235
236
# optional array of environment variables for coredns k8s gateway container
237
# possible usecase: provides username and password for etcd user authentications
238
env: []
239
# - name: WHATEVER_ENV
240
# value: whatever
241
# - name: SOME_SECRET_ENV
242
# valueFrom:
243
# secretKeyRef:
244
# name: some-secret-name
245
# key: secret-key
246
247
# Custom labels to apply to Deployment, Pod, Configmap, Service
248
customLabels: {}
249
# Custom annotations to apply to Deployment, Pod, Configmap, Service.
250
customAnnotations: {}
251
## Create HorizontalPodAutoscaler object.
252
##
253
# hpa:
254
# enabled: false
255
# minReplicas: 1
256
# maxReplicas: 10
257
# metrics:
258
# - type: Resource
259
# resource:
260
# name: memory
261
# target:
262
# type: Utilization
263
# averageUtilization: 60
264
# - type: Resource
265
# resource:
266
# name: cpu
267
# target:
268
# type: Utilization
269
# averageUtilization: 60
270
hpa:
271
enabled: false
272
minReplicas: 1
273
maxReplicas: 2
274
metrics: []
275
deployment:
276
skipConfig: false
277
enabled: true
278
name: ""
279
## Annotations for the coredns k8s gateway deployment
280
annotations: {}
281
# dnsPolicy determines how DNS resolution is handled for the pod.
282
# Options: Default, ClusterFirst, ClusterFirstWithHostNet, None
283
# If set to "None", you must provide dnsConfig.
284
dnsPolicy: "Default"
285
# dnsConfig allows fine-grained DNS configuration for the pod.
286
# Only used when dnsPolicy is set to "None" or when custom DNS settings are needed.
287
# Example:
288
# dnsConfig:
289
# nameservers:
290
# - 8.8.8.8
291
# searches:
292
# - my.dns.search.suffix
293
# options:
294
# - name: ndots
295
# value: "2"
296
dnsConfig: {}
297
# Configures initcontainers for the coredns k8s gateway deployment.
298
initContainers: []
299

The trusted source for open source

Talk to an expert
PrivacyTerms

Product

Chainguard ContainersChainguard LibrariesChainguard VMsChainguard OS PackagesChainguard ActionsChainguard Agent SkillsIntegrationsPricing
© 2026 Chainguard, Inc. All Rights Reserved.
Chainguard® and the Chainguard logo are registered trademarks of Chainguard, Inc. in the United States and/or other countries.
The other respective trademarks mentioned on this page are owned by the respective companies and use of them does not imply any affiliation or endorsement.