apiVersion: apps/v1 kind: Deployment metadata: name: traefik namespace: traefik spec: minReadySeconds: 0 replicas: 1 selector: matchLabels: app: traefik strategy: type: RollingUpdate template: metadata: annotations: prometheus.io/path: /metrics prometheus.io/port: "9100" prometheus.io/scrape: "true" labels: app: traefik spec: containers: - resources: {} args: - --global.sendanonymoususage=false - --global.checknewversion=false - --entrypoints.smb-udp137.address=:137/udp - --entrypoints.smb-udp138.address=:138/udp - --entrypoints.smb-tcp139.address=:139/tcp - --entrypoints.smb-tcp445.address=:445/tcp - --entrypoints.dns.address=:53/udp - --entrypoints.metrics.address=:9100/tcp - --entrypoints.traefik.address=:9000/tcp - --entrypoints.web.address=:8000/tcp - --entrypoints.websecure.address=:8443/tcp - --api.dashboard=true - --ping=true - --metrics.prometheus=true - --metrics.prometheus.entrypoint=metrics - --providers.kubernetescrd - --providers.kubernetescrd.labelSelector=local=true - --providers.kubernetescrd.allowExternalNameServices=true - --entrypoints.websecure.http.middlewares=traefik-default-headers - --entrypoints.websecure.http.tls=true - --entrypoints.websecure.http.tls.certResolver=default - --log.level=WARN - --accesslog=true - --accesslog.fields.defaultmode=keep - --accesslog.fields.headers.defaultmode=drop - --serversTransport.insecureSkipVerify=true - --log.level=INFO env: - name: POD_NAME valueFrom: fieldRef: fieldPath: metadata.name - name: POD_NAMESPACE valueFrom: fieldRef: fieldPath: metadata.namespace image: docker.io/traefik:latest imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 3 httpGet: path: /ping port: 9000 scheme: HTTP initialDelaySeconds: 2 periodSeconds: 10 successThreshold: 1 timeoutSeconds: 2 name: traefik ports: - containerPort: 445 name: smb - containerPort: 53 name: dns protocol: UDP - containerPort: 9100 name: metrics protocol: TCP - containerPort: 9000 name: traefik protocol: TCP - containerPort: 8000 name: web protocol: TCP - containerPort: 8443 name: websecure protocol: TCP readinessProbe: failureThreshold: 1 httpGet: path: /ping port: 9000 scheme: HTTP initialDelaySeconds: 2 periodSeconds: 10 successThreshold: 1 timeoutSeconds: 2 securityContext: allowPrivilegeEscalation: false capabilities: drop: - ALL readOnlyRootFilesystem: true volumeMounts: - mountPath: /data name: data - mountPath: /tmp name: tmp hostNetwork: false securityContext: fsGroupChangePolicy: OnRootMismatch runAsGroup: 65532 runAsNonRoot: true runAsUser: 65532 serviceAccountName: traefik terminationGracePeriodSeconds: 60 volumes: - emptyDir: {} name: data - emptyDir: {} name: tmp