Traefik is a HTTP reverse proxy and load balancer for microservices. It integrates with popular orchestration systems, such as Kubernetes, to provide seamless and automatic service discovery, load balancing, and proxying for your applications. Traefik is designed to be fast, efficient, and easy to use, making it a good solution for home lab environments. With Traefik, you can expose your applications to the internet with ease, providing remote access to your services from anywhere. Whether you're looking to host a personal website, run a web-based service, or simply provide external access to your applications.
Install with:
helm repo add traefik-charts https://helm.traefik.io/traefik/
helm install traefik traefik-charts/traefik -f values.yamlSee examples from other people.
| Name | Repo | Stars | Version | Timestamp |
|---|
See the most popular values for this chart:
| Key | Types |
|---|---|
| boolean | |
| string | |
| boolean | |
| boolean | |
| string | |
ingressClass.name (1) traefik | string |
service.type (13) LoadBalancer | string |
| boolean | |
| string | |
service.spec.loadBalancerIP (6) ${METALLB_TRAEFIK_ADDR} | string |
service.spec.loadBalancerClass (1) io.cilium/bgp-control-plane | string |
service.spec.LoadBalancerIPs (1) ${CLUSTER_LB_TRAEFIK} | string |
service.annotations."io.cilium/lb-ipam-ips" (4) ${TRAEFIK_IP} | string |
| string | |
| string | |
service.single (3) false | boolean |
| string | |
service.ipFamilies[] (1) - IPv4 | string |
service.ipFamilyPolicy (1) RequireDualStack | string |
| string | |
service.loadBalancerIPs[] (1) - ${TRAEFIK_ADDR} | string |
additionalArguments[] (12) - --providers.kubernetesingress.ingressendpoint.ip=${METALLB_TRAEFIK_ADDR} | string |
| number | |
deployment.kind (9) Deployment | string |
| boolean | |
deployment.initContainers[].command[] (1) - sh | string |
deployment.initContainers[].image (1) busybox:1.35.0 | string |
deployment.initContainers[].name (1) volume-permissions | string |
| string | |
| string | |
| number | |
| boolean | |
| number | |
| boolean | |
| string | |
| string | |
| string | |
| string | |
| string | |
tlsOptions.default.maxVersion (11) VersionTLS13 | string |
tlsOptions.default.minVersion (11) VersionTLS12 | string |
| boolean | |
| number | |
| number | |
| boolean | |
| boolean | |
| boolean | |
| string | |
| boolean | |
| string | |
| string | |
ports.websecure.tls.domains[].main (1) ${SECRET_DOMAIN} | string |
ports.websecure.tls.domains[].sans[] (1) - *.${SECRET_DOMAIN} | string |
| number | |
| boolean | |
| string | |
| number | |
| boolean | |
| boolean | |
| string | |
| number | |
ports.websecure.forwardedHeaders.trustedIPs[] (1) - "10.0.0.0/8" | string |
ports.websecure.proxyProtocol.trustedIPs[] (1) - "10.0.0.0/8" | string |
| string | |
| string | |
| string | |
| boolean | |
| boolean | |
| number | |
| number | |
| string | |
| boolean | |
ports.web.redirectTo.port (1) websecure | string |
ports.web.redirectTo (5) websecure | string |
| number | |
| boolean | |
| string | |
| string | |
| boolean | |
| string | |
| string | |
| boolean | |
| number | |
| string | |
| string | |
| string | |
| boolean | |
| number | |
| boolean | |
| number | |
| number | |
| string | |
| boolean | |
| number | |
| number | |
| string | |
| boolean | |
| number | |
| number | |
| string | |
| boolean | |
| boolean | |
| number | |
| number | |
| string | |
| boolean | |
| boolean | |
| number | |
| number | |
| string | |
| boolean | |
| boolean | |
| number | |
| number | |
| string | |
| boolean | |
| number | |
| number | |
| string | |
| boolean | |
| number | |
| number | |
| string | |
| boolean | |
| boolean | |
| number | |
| number | |
| string | |
| boolean | |
| number | |
| number | |
| string | |
| boolean | |
| number | |
| number | |
| string | |
globalArguments[] (8) - --api.insecure=true | string |
| boolean | |
| boolean | |
| boolean | |
| boolean | |
| string | |
| boolean | |
| boolean | |
| string | |
| boolean | |
| boolean | |
| boolean | |
| boolean | |
| boolean | |
| string | |
| string | |
| string | |
pilot.enabled (7) false | boolean |
| string | |
| boolean | |
experimental.plugins.real-ip.moduleName (1) github.com/Paxxs/traefik-get-real-ip | string |
| string | |
| boolean | |
| boolean | |
rbac.enabled (4) true | boolean |
rbac.namespaced (1) false | boolean |
| string | |
| number | |
| string | |
| string | |
gateway.listeners.websecure.certificateRefs[].name (2) ${SECRET_PUBLIC_DOMAIN/./-}-tls | string |
| string | |
| number | |
| string | |
gateway.annotations."external-dns.alpha.kubernetes.io/target" (2) ipv4.${SECRET_PUBLIC_DOMAIN} | string |
gateway.infrastructure.annotations."external-dns.alpha.kubernetes.io/hostname" (2) ipv4.${SECRET_PUBLIC_DOMAIN} | string |
image.repository (3) traefik | string |
image.name (2) traefik | string |
image.pullPolicy (1) IfNotPresent | string |
image.tag (1) 2.7.1 | string |
| string | |
| boolean | |
| boolean | |
| boolean | |
| string | |
metrics.prometheus.prometheusRule.rules[].annotations.description (1) {{ $labels.pod }} on {{ $labels.nodename }} is down | string |
| string | |
metrics.prometheus.prometheusRule.rules[].expr (1) up{job="traefik"} == 0 | string |
| string | |
| string | |
| string | |
| boolean | |
| boolean | |
| boolean | |
| string | |
| string | |
metrics.prometheus.serviceMonitor.metricRelabelings[].regex (1) ^fluentd_output_status_buffer_(oldest|newest)_.+ | string |
| string | |
| string | |
| string | |
| string | |
| string | |
| string | |
| string | |
metrics.prometheus.serviceMonitor.relabelings[].sourceLabels[] (1) - __meta_kubernetes_pod_node_name | string |
| string | |
| string | |
| string | |
| number | |
| number | |
| string | |
| string | |
| string | |
| string | |
affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[].labelSelector.matchLabels."app.kubernetes.io/instance" (1) {{ .Release.Name }}-{{ .Release.Namespace }} | string |
| string | |
| boolean | |
| number | |
| string | |
| number | |
| number | |
| number | |
| string | |
| number | |
| string | |
autoscaling.metrics[].type (1) Resource | string |
| number | |
| string | |
env[].value (2) ${CLUSTER_TIMEZONE} | string |
env[].valueFrom.secretKeyRef.key (1) CLOUDFLARE_API_KEY | string |
env[].valueFrom.secretKeyRef.name (1) home-secrets | string |
| boolean | |
persistence.path (2) /certs | string |
persistence.size (2) 128Mi | string |
persistence.accessMode (1) ReadWriteOnce | string |
| string | |
persistence.storageClass (1) filesystem | string |
| number | |
| string | |
| boolean | |
| number | |
| boolean | |
| number | |
tlsStore.default.defaultCertificate.secretName (2) ${SECRET_PUBLIC_DOMAIN/./-}-tls | string |
| number | |
| string | |
certResolvers.letsencrypt.dnsChallenge.resolvers[] (1) - "1.1.1.1" | string |
certResolvers.letsencrypt.email (1) nick@shoresmedia.com | string |
certResolvers.letsencrypt.storage (1) /data/acme.json | string |
| boolean | |
| boolean | |
| boolean | |
hostNetwork (1) false | boolean |
| number | |
| number | |
| number | |
| number | |
| number | |
nodeSelector.location (1) on-prem | string |
| boolean | |
| boolean | |
| string | |
| number | |
| number | |
| number | |
| number | |
| number | |
| string | |
topologySpreadConstraints[].labelSelector.matchLabels.app (1) {{ template "traefik.name" . }} | string |
| number | |
topologySpreadConstraints[].topologyKey (1) kubernetes.io/hostname | string |
topologySpreadConstraints[].whenUnsatisfiable (1) DoNotSchedule | string |
| number | |
| string | |
volumes[].name (1) traefik-config | string |
volumes[].type (1) configMap | string |