| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210 |
- ---
- kind: Deployment
- apiVersion: apps/v1
- metadata:
- name: matrix
- labels:
- app: matrix
- spec:
- replicas: 1
- selector:
- matchLabels:
- app: matrix
- template:
- metadata:
- labels:
- app: matrix
- spec:
- containers:
- - name: matrix
- image: ghcr.io/element-hq/synapse
- command: ["/bin/bash", "-c", "--"]
- args: ["while true; do sleep 3; done;"]
- env:
- - name: SYNAPSE_SERVER_NAME
- value: "matrix.dezendorf.net"
- - name: SYNAPSE_CONFIG_PATH
- value: "/data/homeserver.yaml"
- ports:
- - name: web
- containerPort: 8008
- volumeMounts:
- - name: "matrix-homeserver-yaml"
- mountPath: "/data/homeserver.yaml"
- subPath: "homeserver-yaml"
- readOnly: no
- - name: "matrix-homeserver-yaml"
- mountPath: "/homeserver.log"
- subPath: "homeserver-log"
- readOnly: no
- - name: "matrix-homeserver-yaml"
- mountPath: "/data/matrix.dezendorf.net.log.config"
- subPath: "homeserver-log-config"
- readOnly: no
- - name: "matrix-data-volume"
- mountPath: "/data"
- readOnly: no
- - name: "matrix-media-volume"
- mountPath: "/data/media_store"
- volumes:
- - name: "matrix-media-volume"
- persistentVolumeClaim:
- claimName: "matrix-media-pvc"
- - name: "matrix-data-volume"
- persistentVolumeClaim:
- claimName: "matrix-data-pvc"
- - name: "matrix-homeserver-yaml"
- configMap:
- defaultMode: 0777
- name: "matrix-homeserver-yaml"
- ---
- apiVersion: v1
- kind: PersistentVolumeClaim
- metadata:
- name: matrix-data-pvc
- spec:
- accessModes:
- - ReadWriteOnce
- storageClassName: longhorn
- resources:
- requests:
- storage: 50G
- ---
- apiVersion: v1
- kind: PersistentVolumeClaim
- metadata:
- name: matrix-media-pvc
- spec:
- accessModes:
- - ReadWriteOnce
- storageClassName: nfs
- resources:
- requests:
- storage: 100G
- ---
- apiVersion: v1
- kind: Service
- metadata:
- name: matrix
- spec:
- type: ClusterIP
- ports:
- - name: web
- port: 8008
- selector:
- app: matrix
- ---
- apiVersion: traefik.containo.us/v1alpha1
- kind: IngressRoute
- metadata:
- name: matrix-ingress-route
- namespace: default
- spec:
- entryPoints:
- - web
- routes:
- - match: ((Host(`matrix`)||Host(`matrix.dezendorf.net`)))
- kind: Rule
- priority: 1
- services:
- - name: matrix
- port: 8008
- ---
- apiVersion: traefik.containo.us/v1alpha1
- kind: IngressRoute
- metadata:
- name: matrix-websecure-route
- namespace: default
- spec:
- entryPoints:
- - websecure
- routes:
- - match: Host(`matrix.dezendorf.net`)
- kind: Rule
- services:
- - name: matrix
- port: 8008
- tls:
- certResolver: myresolver
- ---
- apiVersion: v1
- kind: ConfigMap
- metadata:
- name: matrix-homeserver-yaml
- namespace: default
- data:
- homeserver-log: |
- homeserver-yaml: |
- # Configuration file for Synapse.
- #
- # This is a YAML file: see [1] for a quick introduction. Note in particular
- # that *indentation is important*: all the elements of a list or dictionary
- # should have the same indentation.
- #
- # [1] https://docs.ansible.com/ansible/latest/reference_appendices/YAMLSyntax.html
- #
- # For more information on how to configure Synapse, including a complete accounting of
- # each option, go to docs/usage/configuration/config_documentation.md or
- # https://element-hq.github.io/synapse/latest/usage/configuration/config_documentation.html
- server_name: "matrix.dezendorf.net"
- pid_file: /data/homeserver.pid
- listeners:
- - port: 8008
- tls: false
- type: http
- x_forwarded: true
- #bind_addresses: ['::1', '127.0.0.1']
- resources:
- - names: [client, federation]
- compress: false
- database:
- name: sqlite3
- args:
- database: /data/homeserver.db
- log_config: "/data/matrix.dezendorf.net.log.config"
- media_store_path: /data/media_store
- registration_shared_secret: "9.^i#+7YXwrC^bzKMqkenOZb;9ra6jV0zgZMvO:EBQ.CipL47k"
- report_stats: false
- macaroon_secret_key: ".ughvXa0Or.Xv7o5y550cXnTlv.J8*Mq@JAA^1QXuu2bpR@Lpd"
- form_secret: "iESBV0d@Tg;4~:v5KT3-UX.Kva@.cbJZ9SNU:nWKubPo:X^*Y-"
- signing_key_path: "/data/matrix.dezendorf.net.signing.key"
- enable_registration: true
- enable_registration_captcha: true
- public_baseurl: "https://matrix.dezendorf.net"
- recaptcha_public_key: "6LddQ7EqAAAAACWLD1ZKUBKrLHoFvGWhFiNmrgPh"
- recaptcha_private_key: "6LddQ7EqAAAAAOX7Qrn2PL-s2r5Zo4c_aTi4uzkh"
- trusted_key_servers:
- - server_name: "matrix.org"
- homeserver-log-config: |
- version: 1
- formatters:
- precise:
- format: '%(asctime)s - %(name)s - %(lineno)d - %(levelname)s - %(request)s - %(message)s'
-
- handlers:
- console:
- class: logging.StreamHandler
- formatter: precise
- loggers:
- # This is just here so we can leave `loggers` in the config regardless of whether
- # we configure other loggers below (avoid empty yaml dict error).
- _placeholder:
- level: "INFO"
- handlers: [console]
-
- synapse.storage.SQL:
- # beware: increasing this to DEBUG will make synapse log sensitive
- # information such as access tokens.
- level: INFO
- handlers: [console]
- root:
- level: INFO
- handlers: [console]
- disable_existing_loggers: false
|