apiVersion: apps/v1 kind: Deployment metadata: name: nodejs namespace: nodejs labels: app: nodejs spec: replicas: 1 selector: matchLabels: app: nodejs template: metadata: labels: app: nodejs spec: containers: - name: nodejs image: allardkrings/nodejs imagePullPolicy: Always ports: - containerPort: 3000 --- apiVersion: v1 kind: Service metadata: name: nodejs namespace: nodejs labels: app: nodejs spec: ports: - port: 3000 protocol: TCP selector: app: nodejs type: ClusterIP --- apiVersion: traefik.io/v1alpha1 kind: IngressRoute metadata: name: nodejs-tls namespace: nodejs spec: entryPoints: - websecure routes: - match: Host(`nodejs-prod.allarddcs.nl`) kind: Rule services: - name: nodejs port: 3000 tls: certResolver: letsencrypt --- apiVersion: traefik.io/v1alpha1 kind: IngressRoute metadata: name: nodejs-http namespace: nodejs spec: entryPoints: - web routes: - match: Host(`nodejs-prod.allarddcs.nl`) kind: Rule services: - name: nodejs port: 3000