1
0
Fork 0
kubernetes/home-assistant/home-assistant.yaml

90 lines
2.1 KiB
YAML

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
labels:
app.kubernetes.io/component: home-assistant
app.kubernetes.io/name: home-assistant
app.kubernetes.io/part-of: home-assistant
name: home-assistant
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 60Gi
---
apiVersion: v1
kind: Service
metadata:
labels:
app.kubernetes.io/component: home-assistant
app.kubernetes.io/name: home-assistant
app.kubernetes.io/part-of: home-assistant
name: home-assistant
spec:
ports:
- port: 8123
name: http
selector:
app.kubernetes.io/component: home-assistant
app.kubernetes.io/name: home-assistant
---
apiVersion: apps/v1
kind: StatefulSet
metadata:
labels:
app.kubernetes.io/component: home-assistant
app.kubernetes.io/name: home-assistant
app.kubernetes.io/part-of: home-assistant
name: home-assistant
spec:
serviceName: home-assistant
selector:
matchLabels:
app.kubernetes.io/component: home-assistant
app.kubernetes.io/name: home-assistant
template:
metadata:
labels:
app.kubernetes.io/component: home-assistant
app.kubernetes.io/name: home-assistant
app.kubernetes.io/part-of: home-assistant
spec:
containers:
- name: home-assistant
image: ghcr.io/home-assistant/home-assistant:2023.8.4
env:
- name: TZ
value: America/Chicago
ports:
- containerPort: 8123
name: http
readinessProbe: &probe
httpGet:
port: 8123
path: /
failureThreshold: 3
periodSeconds: 60
successThreshold: 1
timeoutSeconds: 1
startupProbe:
<<: *probe
failureThreshold: 30
periodSeconds: 3
initialDelaySeconds: 3
securityContext:
runAsUser: 300
runAsGroup: 300
volumeMounts:
- name: home-assistant-data
mountPath: /config
subPath: data
securityContext:
fsGroup: 300
volumes:
- name: home-assistant-data
persistentVolumeClaim:
claimName: home-assistant