Files
apps/element/main.yaml
2025-09-09 00:06:24 +02:00

166 lines
4.4 KiB
YAML

apiVersion: v1
kind: ServiceAccount
metadata:
labels:
app.kubernetes.io/instance: element
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/name: element-web
app.kubernetes.io/version: 1.11.110
helm.sh/chart: element-web-1.4.18
name: element-element-web
---
apiVersion: v1
data:
config.json: |
{"default_server_config":{"m.homeserver":{"base_url":"https://synapse.borninpain.de","server_name":"BornInPain"},"m.identity_server":{"base_url":"https://vector.im"}}}
kind: ConfigMap
metadata:
labels:
app.kubernetes.io/instance: element
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/name: element-web
app.kubernetes.io/version: 1.11.110
helm.sh/chart: element-web-1.4.18
name: element-element-web
---
apiVersion: v1
data:
default.conf: |
server {
listen 8080;
listen [::]:8080;
server_name localhost;
root /usr/share/nginx/html;
index index.html;
add_header X-Frame-Options SAMEORIGIN;
add_header X-Content-Type-Options nosniff;
add_header X-XSS-Protection "1; mode=block";
add_header Content-Security-Policy "frame-ancestors 'self'";
# Set no-cache for the index.html only so that browsers always check for a new copy of Element Web.
location = /index.html {
add_header Cache-Control "no-cache";
}
# redirect server error pages to the static page /50x.html
#
error_page 500 502 503 504 /50x.html;
}
kind: ConfigMap
metadata:
labels:
app.kubernetes.io/instance: element
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/name: element-web
app.kubernetes.io/version: 1.11.110
helm.sh/chart: element-web-1.4.18
name: element-element-web-nginx
---
apiVersion: v1
kind: Service
metadata:
labels:
app.kubernetes.io/instance: element
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/name: element-web
app.kubernetes.io/version: 1.11.110
helm.sh/chart: element-web-1.4.18
name: element-element-web
spec:
ports:
- name: http
port: 80
protocol: TCP
targetPort: http
selector:
app.kubernetes.io/instance: element
app.kubernetes.io/name: element-web
type: ClusterIP
---
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
app.kubernetes.io/instance: element
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/name: element-web
app.kubernetes.io/version: 1.11.110
helm.sh/chart: element-web-1.4.18
name: element-element-web
spec:
replicas: 1
selector:
matchLabels:
app.kubernetes.io/instance: element
app.kubernetes.io/name: element-web
template:
metadata:
annotations:
checksum/config: dd31bc5b1287126b31e1391896739693e4c496d6e69eaa489b0bc7b71d45a368
checksum/config-nginx: 7d3bb623059a45526eb058e1804aa3d905fe851332eb292857d926aa978586d9
labels:
app.kubernetes.io/instance: element
app.kubernetes.io/name: element-web
spec:
containers:
- env:
- name: ELEMENT_WEB_PORT
value: "8080"
image: ghcr.io/element-hq/element-web:v1.11.110
imagePullPolicy: IfNotPresent
livenessProbe:
httpGet:
path: /
port: http
name: element-web
ports:
- containerPort: 8080
name: http
protocol: TCP
readinessProbe:
httpGet:
path: /
port: http
resources: {}
securityContext: {}
volumeMounts:
- mountPath: /app/config.json
name: config
subPath: config.json
- mountPath: /etc/nginx/conf.d/config.json
name: config-nginx
subPath: config.json
securityContext: {}
serviceAccountName: element-element-web
volumes:
- configMap:
name: element-element-web
name: config
- configMap:
name: element-element-web-nginx
name: config-nginx
---
apiVersion: v1
kind: Pod
metadata:
annotations:
helm.sh/hook: test-success
labels:
app.kubernetes.io/instance: element
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/name: element-web
app.kubernetes.io/version: 1.11.110
helm.sh/chart: element-web-1.4.18
name: element-element-web-test-connection
spec:
containers:
- args:
- element-element-web:80
command:
- wget
image: busybox
name: wget
restartPolicy: Never