Files
docker-images/_apps/smarthome/zwave2mqtt.yaml
Udo Waechter 4b2f5d8c9f
All checks were successful
continuous-integration/drone/push Build is passing
merged
2024-04-21 17:02:48 +02:00

120 lines
2.7 KiB
YAML

## FROM: https://github.com/OpenZWave/Zwave2Mqtt
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: zwave2mqtt
spec:
replicas: 1
selector:
matchLabels:
name: zwave2mqtt
template:
metadata:
labels:
name: zwave2mqtt
spec:
containers:
- name: zwave2mqtt
image: docker-registry.lan/zwave2mqtt:arm64
livenessProbe:
failureThreshold: 12
httpGet:
httpHeaders:
- name: Accept
value: text/plain
path: /
port: http
initialDelaySeconds: 30
periodSeconds: 10
successThreshold: 1
timeoutSeconds: 2
ports:
- containerPort: 8091
name: http
protocol: TCP
resources:
limits:
cpu: '1'
memory: 512Mi
requests:
cpu: '1'
memory: 200Mi
securityContext:
allowPrivilegeEscalation: true
privileged: true
volumeMounts:
- mountPath: /usr/src/app/store
name: data
# - mountPath: /usr/local/etc/openzwave
# name: ozwdatabase
# - mountPath: /usr/src/app/store/settings.json <-- if putting your settings.json in a secret
# name: config
# readOnly: true
# subPath: settings.json
# nodeSelector:
# kubernetes.io/hostname: stick1 #<--- the name of your cluster node that the zwave usb stick in
# - name: socat
# image: docker-registry.lan/socat:arm64
# args:
# - pty,link=/dev/ttySER2NET0,raw,user=root,group=root,mode=660
# - tcp:auto:3333
# securityContext:
# allowPrivilegeEscalation: true
# privileged: true
volumes:
# - name: config <-- if putting your settings.json in a secret
# secret:
# defaultMode: 420
# secretName: zwave2mqtt
#- name: zwavestick
# hostPath:
# path: /dev/ttyACM0
# type: File
- name: data
persistentVolumeClaim:
claimName: zwave2mqtt-storage
# - name: ozwdatabase
# hostPath:
# path: /zwave2mqtt/database
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: zwave2mqtt-storage
labels:
app: zwave2mqtt
spec:
storageClassName: nfs-ssd
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 20Mi
---
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: zwave2mqtt
spec:
rules:
- host: zwave.lan
http:
paths:
- backend:
serviceName: zwave2mqtt
servicePort: http
---
apiVersion: v1
kind: Service
metadata:
name: zwave2mqtt
spec:
ports:
- name: http
port: 80
targetPort: http
selector:
name: zwave2mqtt