apiVersion: apps/v1
kind: StatefulSet
metadata:
name: homarr
namespace: infra
spec:
replicas: 1
selector:
matchLabels:
app: homarr
serviceName: homarr
template:
metadata:
labels:
app: homarr
spec:
containers:
- image: ghcr.io/ajnart/homarr:latest
name: homarr
ports:
- containerPort: 7575
name: homarr
volumeMounts:
- mountPath: "/app/data/configs"
name: config
- mountPath: "/app/public/icons"
name: icons
- mountPath: "/data"
name: data
terminationGracePeriodSeconds: 10
volumeClaimTemplates:
- metadata:
name: config
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 100M
storageClassName: vsan-compute
volumeMode: Filesystem
- truncated due to discord limits: ...
---
apiVersion: v1
kind: Service
metadata:
annotations: {}
name: homarr
namespace: infra
spec:
ports:
- name: http
port: 80
protocol: TCP
targetPort: 7575
selector:
app: homarr
type: LoadBalancer
apiVersion: apps/v1
kind: StatefulSet
metadata:
name: homarr
namespace: infra
spec:
replicas: 1
selector:
matchLabels:
app: homarr
serviceName: homarr
template:
metadata:
labels:
app: homarr
spec:
containers:
- image: ghcr.io/ajnart/homarr:latest
name: homarr
ports:
- containerPort: 7575
name: homarr
volumeMounts:
- mountPath: "/app/data/configs"
name: config
- mountPath: "/app/public/icons"
name: icons
- mountPath: "/data"
name: data
terminationGracePeriodSeconds: 10
volumeClaimTemplates:
- metadata:
name: config
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 100M
storageClassName: vsan-compute
volumeMode: Filesystem
- truncated due to discord limits: ...
---
apiVersion: v1
kind: Service
metadata:
annotations: {}
name: homarr
namespace: infra
spec:
ports:
- name: http
port: 80
protocol: TCP
targetPort: 7575
selector:
app: homarr
type: LoadBalancer