blob: ba4ac38b4943805faa48ae9e093d9c86748598df [file] [log] [blame]
Matthias Andreas Benkarda4e261e2024-03-09 15:52:17 +01001---
2apiVersion: v1
3kind: Service
4
5metadata:
6 name: dendrite
7 namespace: mulk
8
9 labels:
10 name: dendrite
11 k8s-app: dendrite
12
13spec:
14 selector:
15 name: dendrite
16 type: ClusterIP
17
18 ports:
19 - name: http
20 port: 80
21 targetPort: http
22 protocol: TCP
23
24---
25apiVersion: networking.k8s.io/v1
26kind: Ingress
27
28metadata:
29 name: dendrite
30 namespace: mulk
31
32 labels:
33 name: dendrite
34 k8s-app: dendrite
35
36 annotations:
37 ingress.kubernetes.io/ssl-proxy-headers: X-Forwarded-Proto:https
38 ingress.kubernetes.io/custom-request-headers: X-Forwarded-Proto:https||X-Forwarded-Port:443
39 kubernetes.io/ingress.class: nginx
40 cert-manager.io/cluster-issuer: letsencrypt-prod
41
42spec:
43 rules:
44 - host: matrix.benkard.de
45 http:
46 paths:
47 - path: /_matrix
48 pathType: ImplementationSpecific
49 backend:
50 service:
51 name: dendrite
52 port:
53 name: http
54
55 tls:
56 - hosts:
57 - matrix.benkard.de
58 secretName: matrix-tls
59
60---
61apiVersion: apps/v1
62kind: Deployment
63
64metadata:
65 name: dendrite
66 namespace: mulk
67 labels:
68 name: dendrite
69 k8s-app: dendrite
70
71spec:
72 replicas: 1
73 strategy:
74 type: Recreate
75
76 selector:
77 matchLabels:
78 k8s-app: dendrite
79 name: dendrite
80
81 template:
82 metadata:
83 labels:
84 name: dendrite
85 k8s-app: dendrite
86
87 spec:
88 imagePullSecrets:
89 - name: portus-token
90
91 volumes:
92 - name: config
93 secret:
94 secretName: dendrite-config
95 defaultMode: 0600
96 items:
97 - key: dendrite.yaml
98 path: dendrite.yaml
99 - name: data
100 persistentVolumeClaim:
101 claimName: dendrite-data
102 - name: secrets
103 secret:
104 secretName: dendrite
105 defaultMode: 0600
106 items:
107 - key: matrix-key.pem
108 path: matrix-key.pem
109
110 containers:
111 - name: master
Matthias Andreas Benkard7cc90d42026-11-05 14:43:06 +0100112 image: docker.io/matrixdotorg/dendrite-monolith:v0.15.2
Matthias Andreas Benkarda4e261e2024-03-09 15:52:17 +0100113 imagePullPolicy: IfNotPresent
114
115 resources:
116 limits:
117 cpu: 2000m
Matthias Andreas Benkard7cc90d42026-11-05 14:43:06 +0100118 memory: 1Gi
Matthias Andreas Benkarda4e261e2024-03-09 15:52:17 +0100119 requests:
120 cpu: 10m
121 memory: 10Mi
122
123 volumeMounts:
124 - name: config
125 mountPath: /etc/dendrite
126 - name: data
127 mountPath: /data
128 - name: secrets
129 mountPath: /secrets
130
131 ports:
132 - containerPort: 8008
133 name: http
134 protocol: TCP
135
136---
137apiVersion: v1
138kind: PersistentVolumeClaim
139
140metadata:
141 name: dendrite-data
142 namespace: mulk
143
144 labels:
145 name: dendrite-data
146 k8s-app: dendrite
147
148 annotations:
149 volume.beta.kubernetes.io/storage-provisioner: rancher.io/local-path
150
151spec:
152 accessModes:
153 - ReadWriteOnce
154
155 resources:
156 requests:
157 storage: 50Gi
158
159 storageClassName: local-path
160---