94 lines
2.5 KiB
YAML
94 lines
2.5 KiB
YAML
---
|
|
apiVersion: helm.toolkit.fluxcd.io/v2beta1
|
|
kind: HelmRelease
|
|
metadata:
|
|
name: traefik
|
|
namespace: networking
|
|
spec:
|
|
interval: 5m
|
|
chart:
|
|
spec:
|
|
chart: traefik
|
|
version: 10.19.4
|
|
sourceRef:
|
|
kind: HelmRepository
|
|
name: traefik-charts
|
|
namespace: flux-system
|
|
interval: 5m
|
|
dependsOn:
|
|
- name: cert-manager
|
|
namespace: cert-manager
|
|
install:
|
|
createNamespace: true
|
|
remediation:
|
|
retries: 3
|
|
upgrade:
|
|
remediation:
|
|
retries: 3
|
|
values:
|
|
image:
|
|
name: ghcr.io/k8s-at-home/traefik
|
|
deployment:
|
|
kind: Deployment
|
|
replicas: 1
|
|
service:
|
|
enabled: true
|
|
type: LoadBalancer
|
|
spec:
|
|
loadBalancerIP: "${METALLB_TRAEFIK_ADDR}"
|
|
externalTrafficPolicy: Local
|
|
logs:
|
|
general:
|
|
format: json
|
|
level: DEBUG
|
|
access:
|
|
enabled: true
|
|
format: json
|
|
ingressClass:
|
|
enabled: true
|
|
isDefaultClass: true
|
|
fallbackApiVersion: v1
|
|
ingressRoute:
|
|
dashboard:
|
|
enabled: false
|
|
globalArguments:
|
|
- "--api.insecure=true"
|
|
- "--serverstransport.insecureskipverify=true"
|
|
- "--providers.kubernetesingress.ingressclass=traefik"
|
|
- "--metrics.prometheus=true"
|
|
- "--metrics.prometheus.entryPoint=metrics"
|
|
- "--entryPoints.websecure.forwardedHeaders.trustedIPs=10.0.0.0/8,192.168.0.0/16,172.16.0.0/12,103.21.244.0/22,103.22.200.0/22,103.31.4.0/22,104.16.0.0/13,104.24.0.0/14,108.162.192.0/18,131.0.72.0/22,141.101.64.0/18,162.158.0.0/15,172.64.0.0/13,173.245.48.0/20,188.114.96.0/20,190.93.240.0/20,197.234.240.0/22,198.41.128.0/17,2400:cb00::/32,2606:4700::/32,2803:f800::/32,2405:b500::/32,2405:8100::/32,2a06:98c0::/29,2c0f:f248::/32"
|
|
additionalArguments:
|
|
- "--providers.kubernetesingress.ingressendpoint.ip=${METALLB_TRAEFIK_ADDR}"
|
|
- "--providers.kubernetesingress.allowexternalnameservices=true"
|
|
- "--providers.kubernetescrd.allowexternalnameservices=true"
|
|
ports:
|
|
traefik:
|
|
expose: true
|
|
web:
|
|
redirectTo: websecure
|
|
websecure:
|
|
tls:
|
|
enabled: true
|
|
options: "default"
|
|
metrics:
|
|
port: 8082
|
|
expose: true
|
|
exposedPort: 8082
|
|
tlsOptions:
|
|
default:
|
|
minVersion: VersionTLS12
|
|
maxVersion: VersionTLS13
|
|
sniStrict: true
|
|
pilot:
|
|
enabled: false
|
|
experimental:
|
|
plugins:
|
|
enabled: false
|
|
resources:
|
|
requests:
|
|
memory: 100Mi
|
|
cpu: 500m
|
|
limits:
|
|
memory: 500Mi
|