--- kind: Deployment apiVersion: apps/v1 metadata: name: device-status-service namespace: home-monitor labels: app: device-status-service spec: replicas: 1 selector: matchLabels: app: device-status-service template: metadata: labels: app: device-status-service spec: containers: - name: device-status-service image: ckaczor/home-monitor-device-status-service:#BUILD_BUILDNUMBER# terminationMessagePath: "/dev/termination-log" terminationMessagePolicy: File imagePullPolicy: Always securityContext: privileged: true env: - name: Hub__DeviceStatus value: http://hub-service/device-status - name: Telegram__BotToken valueFrom: secretKeyRef: name: telegram key: bot-token - name: Telegram__ChatId valueFrom: secretKeyRef: name: telegram key: chat-id restartPolicy: Always terminationGracePeriodSeconds: 30 dnsPolicy: ClusterFirst nodeSelector: kubernetes.io/hostname: kubernetes schedulerName: default-scheduler --- kind: Service apiVersion: v1 metadata: name: device-status-service spec: ports: - name: client port: 80 selector: app: device-status-service type: ClusterIP --- apiVersion: traefik.containo.us/v1alpha1 kind: IngressRoute metadata: annotations: kubernetes.io/ingress.class: traefik creationTimestamp: null name: device-status namespace: home-monitor spec: routes: - kind: Rule match: PathPrefix(`/api/device-status`) middlewares: - name: api-device-status namespace: home-monitor services: - kind: Service name: device-status-service namespace: home-monitor port: 80 --- apiVersion: traefik.containo.us/v1alpha1 kind: Middleware metadata: creationTimestamp: null name: api-device-status namespace: home-monitor spec: stripPrefix: prefixes: - /api/device-status