Skip to content

hex.k8s.traefik ​

  • Latest: 39.0.6
  • Latest date: 2026-03-20
  • Version count: 52
  • Source: json module
  • values.yaml: link
  • pinned latest sha256: 13vfhsgjvzl8mkq2rdqa5cg3q63v3v3kpjvakg3i8nbca4rqid3n
  • extra helper functions: 10

Copy Pinned Spec ​

nix
(hex.k8s.traefik.version.v39-0-6 {
  valuesAttrs = {};
})

Helper Functions ​

hex.k8s.traefik.ingress_route.build ​

Usage

render an IngressRoute resource to YAML using the args accepted by ingress_route.setup.

returns YAML as a string; ingress_route.setup returns an attrset.

Copy Call Skeleton ​

nix
(hex.k8s.traefik.ingress_route.build {
  name = "build";
  domain = "https://example.com";
})

Required Args ​

ArgTypeNotes
namestringIngressRoute resource name
domainstringhost or host regexp matched by the route

Optional Args ​

ArgTypeDefaultNotes
regexboolfalseuse HostRegexp instead of Host
portnumber80backend service port
namespacestring"default"backend service namespace
servicestringnamebackend service name
serviceSchemestringif port == 443 then "https" else "http"backend service scheme
extraServiceattrset{ }extra fields merged into primary service entry
extraServiceslist[ ]additional service entries appended to services
internalbooltrueswitch ingress class between internal and external traefik
secretNamestring""TLS secret name, empty string disables TLS
labelslist[ ]metadata labels list inserted when non-empty
middlewareslist[ ]middleware refs attached to the route
extraRuleattrset{ }extra fields merged into route rule
extraRouteslist[ ]additional route entries appended to spec.routes
extraSpecattrset{ }extra fields merged into spec
ingressRouteNamespacestring"default"namespace for the IngressRoute resource
pre23boolfalseuse legacy traefik.containo.us API group
apiVersionstringif pre23 then "traefik.containo.us/v1alpha1" else "traefik.io/v1alpha1"override Traefik CRD apiVersion

hex.k8s.traefik.ingress_route.setup ​

Usage

build an IngressRoute resource attrset for host routing and middleware wiring.

Copy Call Skeleton ​

nix
(hex.k8s.traefik.ingress_route.setup {
  name = "setup";
  domain = "https://example.com";
})

Required Args ​

ArgTypeNotes
namestringIngressRoute resource name
domainstringhost or host regexp matched by the route

Optional Args ​

ArgTypeDefaultNotes
regexboolfalseuse HostRegexp instead of Host
portnumber80backend service port
namespacestring"default"backend service namespace
servicestringnamebackend service name
serviceSchemestringif port == 443 then "https" else "http"backend service scheme
extraServiceattrset{ }extra fields merged into primary service entry
extraServiceslist[ ]additional service entries appended to services
internalbooltrueswitch ingress class between internal and external traefik
secretNamestring""TLS secret name, empty string disables TLS
labelslist[ ]metadata labels list inserted when non-empty
middlewareslist[ ]middleware refs attached to the route
extraRuleattrset{ }extra fields merged into route rule
extraRouteslist[ ]additional route entries appended to spec.routes
extraSpecattrset{ }extra fields merged into spec
ingressRouteNamespacestring"default"namespace for the IngressRoute resource
pre23boolfalseuse legacy traefik.containo.us API group
apiVersionstringif pre23 then "traefik.containo.us/v1alpha1" else "traefik.io/v1alpha1"override Traefik CRD apiVersion

hex.k8s.traefik.middleware._.add_prefix ​

Usage

create an addPrefix middleware that prepends a path prefix.

Copy Call Skeleton ​

nix
(hex.k8s.traefik.middleware._.add_prefix {
  prefix = "TODO";
})

Required Args ​

ArgTypeNotes
prefixstringprefix to prepend to request paths

Optional Args ​

ArgTypeDefaultNotes
namestring"add-prefix"Middleware resource name
extraSpecattrset{ }extra fields merged at resource root

hex.k8s.traefik.middleware._.compress ​

Usage

create a compress middleware for HTTP response compression.

Copy Call Skeleton ​

nix
(hex.k8s.traefik.middleware._.compress {
})

Required Args ​

ArgTypeNotes

Optional Args ​

ArgTypeDefaultNotes
namestring"compress"Middleware resource name
extraSpecattrset{ }extra fields merged at resource root

hex.k8s.traefik.middleware._.default_index ​

Usage

create a middleware that rewrites / to /index.html.

Copy Call Skeleton ​

nix
(hex.k8s.traefik.middleware._.default_index {
})

Required Args ​

ArgTypeNotes

Optional Args ​

ArgTypeDefaultNotes
namestring"default-index"Middleware resource name
extraSpecattrset{ }extra fields merged at resource root

hex.k8s.traefik.middleware._.ip_allowlist ​

Usage

create an ipAllowList middleware with allowed source ranges.

Copy Call Skeleton ​

nix
(hex.k8s.traefik.middleware._.ip_allowlist {
  ips = [ ];
})

Required Args ​

ArgTypeNotes
ipslistCIDR ranges allowed to access matching routes

Optional Args ​

ArgTypeDefaultNotes
namestring"ip-allowlist"Middleware resource name
extraSpecattrset{ }extra fields merged at resource root

hex.k8s.traefik.middleware._.ip_whitelist ​

Usage

create a legacy ipWhiteList middleware with allowed source ranges.

Copy Call Skeleton ​

nix
(hex.k8s.traefik.middleware._.ip_whitelist {
  ips = [ ];
})

Required Args ​

ArgTypeNotes
ipslistCIDR ranges allowed to access matching routes

Optional Args ​

ArgTypeDefaultNotes
namestring"ip-whitelist"Middleware resource name
extraSpecattrset{ }extra fields merged at resource root

hex.k8s.traefik.middleware._.strip_prefix ​

Usage

create a stripPrefix middleware that removes path prefixes.

Copy Call Skeleton ​

nix
(hex.k8s.traefik.middleware._.strip_prefix {
  prefixes = [ ];
})

Required Args ​

ArgTypeNotes
prefixeslistprefixes to strip from request paths

Optional Args ​

ArgTypeDefaultNotes
namestring"strip-prefix"Middleware resource name
extraSpecattrset{ }extra fields merged at resource root

hex.k8s.traefik.middleware.build ​

Usage

render a Middleware resource to YAML using the args accepted by middleware.setup.

returns YAML as a string; middleware.setup returns an attrset.

Copy Call Skeleton ​

nix
(hex.k8s.traefik.middleware.build {
  name = "build";
  spec = { };
})

Required Args ​

ArgTypeNotes
namestringMiddleware resource name
specattrsetmiddleware spec body (addPrefix/stripPrefix/etc)

Optional Args ​

ArgTypeDefaultNotes
kindstring"Middleware"Kubernetes resource kind to render
pre23boolfalseuse legacy traefik.containo.us API group
apiVersionstringif pre23 then "traefik.containo.us/v1alpha1" else "traefik.io/v1alpha1"override Traefik CRD apiVersion
extraSpecattrset{ }extra fields merged at resource root

hex.k8s.traefik.middleware.setup ​

Usage

build a generic Middleware resource attrset for custom middleware specs.

Copy Call Skeleton ​

nix
(hex.k8s.traefik.middleware.setup {
  name = "setup";
  spec = { };
})

Required Args ​

ArgTypeNotes
namestringMiddleware resource name
specattrsetmiddleware spec body (addPrefix/stripPrefix/etc)

Optional Args ​

ArgTypeDefaultNotes
kindstring"Middleware"Kubernetes resource kind to render
pre23boolfalseuse legacy traefik.containo.us API group
apiVersionstringif pre23 then "traefik.containo.us/v1alpha1" else "traefik.io/v1alpha1"override Traefik CRD apiVersion
extraSpecattrset{ }extra fields merged at resource root

Versions ​

VersionDateAttr
39.0.62026-03-20hex.k8s.traefik.version.v39-0-6
39.0.52026-03-09hex.k8s.traefik.version.v39-0-5
39.0.42026-03-05hex.k8s.traefik.version.v39-0-4
39.0.32026-03-05hex.k8s.traefik.version.v39-0-3
39.0.22026-02-20hex.k8s.traefik.version.v39-0-2
39.0.12026-02-13hex.k8s.traefik.version.v39-0-1
39.0.02026-01-23hex.k8s.traefik.version.v39-0-0
38.0.22026-01-08hex.k8s.traefik.version.v38-0-2
38.0.12025-12-19hex.k8s.traefik.version.v38-0-1
38.0.02025-12-18hex.k8s.traefik.version.v38-0-0
37.4.02025-11-21hex.k8s.traefik.version.v37-4-0
37.3.02025-11-10hex.k8s.traefik.version.v37-3-0
37.2.02025-10-22hex.k8s.traefik.version.v37-2-0
37.1.22025-10-03hex.k8s.traefik.version.v37-1-2
37.1.12025-09-10hex.k8s.traefik.version.v37-1-1
37.1.02025-09-03hex.k8s.traefik.version.v37-1-0
37.0.02025-07-30hex.k8s.traefik.version.v37-0-0
36.3.02025-07-01hex.k8s.traefik.version.v36-3-0
36.2.02025-06-24hex.k8s.traefik.version.v36-2-0
36.1.02025-06-11hex.k8s.traefik.version.v36-1-0
36.0.02025-06-06hex.k8s.traefik.version.v36-0-0
35.4.02025-05-23hex.k8s.traefik.version.v35-4-0
35.3.02025-05-19hex.k8s.traefik.version.v35-3-0
35.2.02025-04-29hex.k8s.traefik.version.v35-2-0
35.1.02025-04-25hex.k8s.traefik.version.v35-1-0
35.0.12025-04-18hex.k8s.traefik.version.v35-0-1
34.5.02025-03-31hex.k8s.traefik.version.v34-5-0
34.4.12025-03-04hex.k8s.traefik.version.v34-4-1
34.3.02025-02-07hex.k8s.traefik.version.v34-3-0
34.2.02025-01-28hex.k8s.traefik.version.v34-2-0
34.1.02025-01-15hex.k8s.traefik.version.v34-1-0
33.2.12024-12-13hex.k8s.traefik.version.v33-2-1
33.1.02024-12-02hex.k8s.traefik.version.v33-1-0
33.0.02024-10-30hex.k8s.traefik.version.v33-0-0
32.1.12024-10-11hex.k8s.traefik.version.v32-1-1
32.0.02024-09-27hex.k8s.traefik.version.v32-0-0
31.1.12024-09-20hex.k8s.traefik.version.v31-1-1
31.0.02024-09-03hex.k8s.traefik.version.v31-0-0
30.1.02024-08-16hex.k8s.traefik.version.v30-1-0
29.0.12024-07-09hex.k8s.traefik.version.v29-0-1
28.3.02024-06-14hex.k8s.traefik.version.v28-3-0
27.0.22024-04-12hex.k8s.traefik.version.v27-0-2
26.1.02024-02-19hex.k8s.traefik.version.v26-1-0
25.0.02023-10-23hex.k8s.traefik.version.v25-0-0
24.0.02023-08-10hex.k8s.traefik.version.v24-0-0
23.2.02023-07-27hex.k8s.traefik.version.v23-2-0
22.3.0-hex.k8s.traefik.version.v22-3-0
21.2.1-hex.k8s.traefik.version.v21-2-1
20.8.0-hex.k8s.traefik.version.v20-8-0
19.0.4-hex.k8s.traefik.version.v19-0-4
12.0.7-hex.k8s.traefik.version.v12-0-7
10.33.0-hex.k8s.traefik.version.v10-33-0

Back to Chart Index