78 lines
2.5 KiB
YAML
78 lines
2.5 KiB
YAML
# infrastructure/traefik/deployment.yaml
|
|
apiVersion: v1
|
|
items:
|
|
- apiVersion: apps/v1
|
|
kind: Deployment
|
|
metadata:
|
|
annotations:
|
|
deployment.kubernetes.io/revision: "4"
|
|
name: traefik
|
|
namespace: traefik
|
|
spec:
|
|
progressDeadlineSeconds: 600
|
|
replicas: 1
|
|
revisionHistoryLimit: 10
|
|
selector:
|
|
matchLabels:
|
|
app: traefik
|
|
strategy:
|
|
rollingUpdate:
|
|
maxSurge: 25%
|
|
maxUnavailable: 25%
|
|
type: RollingUpdate
|
|
template:
|
|
metadata:
|
|
annotations:
|
|
kubectl.kubernetes.io/restartedAt: "2025-02-12T05:57:48-06:00"
|
|
creationTimestamp: null
|
|
labels:
|
|
app: traefik
|
|
spec:
|
|
containers:
|
|
- args:
|
|
- --providers.kubernetesIngress=true
|
|
- --providers.kubernetescrd=true
|
|
- --entrypoints.web.address=:80
|
|
- --entrypoints.websecure.address=:443
|
|
- --api.dashboard=true
|
|
- --metrics.prometheus=true
|
|
- --metrics.prometheus.addEntryPointsLabels=true
|
|
- --metrics.prometheus.addRoutersLabels=true
|
|
- --metrics.prometheus.addServicesLabels=true
|
|
- --entrypoints.web.transport.respondingTimeouts.readTimeout=0s
|
|
- --entrypoints.web.transport.respondingTimeouts.writeTimeout=0s
|
|
- --entrypoints.web.transport.respondingTimeouts.idleTimeout=0s
|
|
- --entrypoints.websecure.transport.respondingTimeouts.readTimeout=0s
|
|
- --entrypoints.websecure.transport.respondingTimeouts.writeTimeout=0s
|
|
- --entrypoints.websecure.transport.respondingTimeouts.idleTimeout=0s
|
|
- --entrypoints.metrics.address=:9100
|
|
- --metrics.prometheus.entryPoint=metrics
|
|
image: traefik:v3.3.3
|
|
imagePullPolicy: IfNotPresent
|
|
name: traefik
|
|
ports:
|
|
- containerPort: 80
|
|
name: web
|
|
protocol: TCP
|
|
- containerPort: 443
|
|
name: websecure
|
|
protocol: TCP
|
|
- containerPort: 8080
|
|
name: admin
|
|
protocol: TCP
|
|
- containerPort: 9100
|
|
name: metrics
|
|
protocol: TCP
|
|
terminationMessagePath: /dev/termination-log
|
|
terminationMessagePolicy: File
|
|
dnsPolicy: ClusterFirst
|
|
nodeSelector:
|
|
node-role.kubernetes.io/worker: "true"
|
|
restartPolicy: Always
|
|
schedulerName: default-scheduler
|
|
serviceAccount: traefik-ingress-controller
|
|
serviceAccountName: traefik-ingress-controller
|
|
terminationGracePeriodSeconds: 30
|
|
kind: List
|
|
metadata: {}
|