--- apiVersion: apps/v1 kind: Deployment metadata: name: homebridge spec: selector: matchLabels: app: homebridge template: metadata: labels: app: homebridge spec: containers: - name: homebridge image: homebridge/homebridge:2024-01-08 resources: limits: memory: "1024Mi" cpu: "2" requests: memory: "256Mi" cpu: "500m" ports: - containerPort: 8581 - containerPort: 5353 volumeMounts: - name: data mountPath: /homebridge readOnly: false env: - name: HOMEBRIDGE_CONFIG_UI_PORT value: "8581" - name: PACKAGES value: "ffmpeg bluez libbluetooth-dev libudev-dev" volumes: - name: data persistentVolumeClaim: claimName: homebridge hostNetwork: true --- kind: PersistentVolumeClaim apiVersion: v1 metadata: name: homebridge spec: accessModes: - ReadWriteOnce resources: requests: storage: 5Gi storageClassName: nfs-client --- apiVersion: v1 kind: Service metadata: name: homebridge spec: selector: app: homebridge ports: - port: 8581 targetPort: 8581 name: web - port: 5353 targetPort: 5353 name: bonjour --- apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: homebridge annotations: cert-manager.io/issuer: "le-issuer" namespace: default spec: tls: - hosts: - hb.gmem.ca secretName: gmem-ca-wildcard rules: - host: hb.gmem.ca http: paths: - path: / pathType: Prefix backend: service: name: homebridge port: number: 8581