diff --git a/traefik/traefik-dashboard-ingress.yaml b/traefik/traefik-dashboard-ingress.yaml new file mode 100644 index 0000000..f4db48d --- /dev/null +++ b/traefik/traefik-dashboard-ingress.yaml @@ -0,0 +1,19 @@ +apiVersion: networking.k8s.io/v1 +kind: Ingress +metadata: + name: traefik-ingress + namespace: kube-system + annotations: + spec.ingressClassName: traefik +spec: + rules: + - host: trfk.delmar.bzh # Replace YOUR_DOMAIN_NAME with your own domain. + http: + paths: + - path: / + pathType: Prefix + backend: + service: + name: traefik-dashboard + port: + number: 9000 diff --git a/traefik/traefik-dashboard-service.yaml b/traefik/traefik-dashboard-service.yaml new file mode 100644 index 0000000..71d2df0 --- /dev/null +++ b/traefik/traefik-dashboard-service.yaml @@ -0,0 +1,18 @@ +apiVersion: v1 +kind: Service +metadata: + name: traefik-dashboard + namespace: kube-system + labels: + app.kubernetes.io/instance: traefik + app.kubernetes.io/name: traefik-dashboard +spec: + type: ClusterIP + ports: + - name: traefik + port: 9000 # Dashboard listens on port 9000 + targetPort: 9000 # Forward traffic to this port on Traefik pods + protocol: TCP + selector: + app.kubernetes.io/instance: traefik-kube-system + app.kubernetes.io/name: traefik diff --git a/traefik/traefik-ingress.ovh.yaml b/traefik/traefik-ingress.ovh.yaml new file mode 100644 index 0000000..6a23bf0 --- /dev/null +++ b/traefik/traefik-ingress.ovh.yaml @@ -0,0 +1,68 @@ +--- +apiVersion: networking.k8s.io/v1 +kind: Ingress +metadata: + name: traefik-ingress + namespace: kube-system + annotations: + spec.ingressClassName: traefik + traefik.ingress.kubernetes.io/router.middlewares: kube-system-traefik-basic-auth-middleware@kubernetescrd +spec: + serviceAccountName: traefik-ingress + env: + name: OVH_ENDPOINT + value: ovh-eu + name: OVH_APPLICATION_KEY + value: 3f8bdfed17f848d8 + name: OVH_APPLICATION_SECRET + value: 6946758d7515ecef108aeb286bf3c7d0 + name: OVH_CONSUMER_KEY + value: 94b2ddf482d36421a33aa6b3aa51595 + args: + - --configFile=/config/traefik.toml + volumeMounts: + - name: traefik-config + mountPath: /config/ + - name: traefik-custom + mountPath: /custom/ + - name: traefik-certs + mountPath: /certs/ + ports: + name: http + containerPort: 80 + name: https + containerPort: 443 + name: dashboard + containerPort: 8080 + volumes: + - name: traefik-config + configMap: + - name: traefik-config + - name: traefik-custom + - name: traefik-certs + persistentVolumeClaim: + claimName: traefik-certsrules: + - http: + paths: + - pathType: Prefix + path: "/" + backend: + service: + name: traefik-dashboard + port: + number: 8080 + +--- +apiVersion: v1 +kind: Service +metadata: + name: traefik-dashboard +spec: + ports: + - name: http + port: 8080 + targetPort: 8080 + selector: + app: traefik-dashboard + type: LoadBalancer +