apiVersion: apps/v1 kind: Deployment metadata: name: homeassistant spec: replicas: 1 selector: matchLabels: name: homeassistant template: metadata: labels: name: homeassistant spec: affinity: nodeAffinity: requiredDuringSchedulingIgnoredDuringExecution: nodeSelectorTerms: - matchExpressions: - key: net operator: In values: - local hostNetwork: true containers: - name: homeassistant image: ghcr.io/home-assistant/home-assistant:stable imagePullPolicy: "Always" env: - name: TZ value: "Europe/Zurich" volumeMounts: - name: homeassistant mountPath: /config ports: - containerPort: 8123 name: http volumes: - name: homeassistant persistentVolumeClaim: claimName: homeassistant --- apiVersion: v1 kind: Service metadata: name: homeassistant spec: ipFamilyPolicy: PreferDualStack type: NodePort selector: name: homeassistant ports: - protocol: TCP port: 8123 targetPort: http nodePort: 31823 name: http --- apiVersion: v1 kind: PersistentVolumeClaim metadata: name: homeassistant spec: storageClassName: nfs-vrt accessModes: - ReadWriteMany resources: requests: storage: 300Mi