dendrite/helm/dendrite
2022-12-19 08:15:50 +01:00
..
.helm-docs Update docs and values 2022-12-08 13:04:59 +01:00
ci New line.. 2022-12-08 13:06:22 +01:00
templates Enable MSC2946 by default, enable profiling if specified, README tweaks 2022-12-19 08:15:50 +01:00
Chart.yaml Add missing files, fix lint 2022-12-06 09:30:35 +01:00
README.md Enable MSC2946 by default, enable profiling if specified, README tweaks 2022-12-19 08:15:50 +01:00
README.md.gotmpl Add modified helm chart 2022-12-06 09:04:28 +01:00
values.yaml Enable MSC2946 by default, enable profiling if specified, README tweaks 2022-12-19 08:15:50 +01:00

dendrite

Version: 0.10.8 Type: application AppVersion: 0.10.8 Dendrite Matrix Homeserver

Status: NOT PRODUCTION READY

About

This chart creates a monolith deployment, including an optionally enabled PostgreSQL dependency to connect to.

Manual database creation

(You can skip this, if you're deploying the PostgreSQL dependency)

You'll need to create the following database before starting Dendrite (see installation):

create database dendrite

or

sudo -u postgres createdb -O dendrite -E UTF-8 dendrite

Usage with appservices

Create a folder appservices and place your configurations in there. The configurations will be read and placed in a secret dendrite-appservices-conf.

Source Code

Requirements

Repository Name Version
https://charts.bitnami.com/bitnami postgresql 11.6.21

Values

Key Type Default Description
clientapi.registration.enable_registration_captcha bool false enable reCAPTCHA registration
clientapi.registration.guests_disabled bool true
clientapi.registration.recaptcha_bypass_secret string "" reCAPTCHA bypass secret
clientapi.registration.recaptcha_private_key string "" reCAPTCHA private key
clientapi.registration.recaptcha_public_key string "" reCAPTCHA public key
clientapi.registration.recaptcha_siteverify_api string ""
clientapi.registration.registration_disabled bool true Prevents new users from being able to register on this homeserver, except when using the registration shared secret below.
clientapi.registration.shared_secret string "" If set, allows registration by anyone who knows the shared secret, regardless of whether registration is otherwise disabled.
configuration.cache.max_age string "1h" The maximum amount of time that a cache entry can live for in memory before it will be evicted and/or refreshed from the database. Lower values result in easier admission of new cache entries but may also increase database load in comparison to higher values, so adjust conservatively. Higher values may make it harder for new items to make it into the cache, e.g. if new rooms suddenly become popular.
configuration.cache.max_size_estimated string "1gb" The estimated maximum size for the global cache in bytes, or in terabytes, gigabytes, megabytes or kilobytes when the appropriate 'tb', 'gb', 'mb' or 'kb' suffix is specified. Note that this is not a hard limit, nor is it a memory limit for the entire process. A cache that is too small may ultimately provide little or no benefit.
configuration.database.conn_max_lifetime int -1 Default database maximum lifetime
configuration.database.host string "" Default database host
configuration.database.max_idle_conns int 2 Default database maximum idle connections
configuration.database.max_open_conns int 90 Default database maximum open connections
configuration.database.password string "" Default database password
configuration.database.user string "" Default database user
configuration.disable_federation bool false Disable federation. Dendrite will not be able to make any outbound HTTP requests to other servers and the federation API will not be exposed.
configuration.dns_cache.cache_lifetime string "10m" Duration for how long DNS cache items should be considered valid (see time.ParseDuration for more)
configuration.dns_cache.cache_size int 256 Maximum number of entries to hold in the DNS cache
configuration.dns_cache.enabled bool false Whether or not the DNS cache is enabled.
configuration.key_validity_period string "168h0m0s"
configuration.logging list default dendrite config values Default logging configuration
configuration.metrics.basic_auth.password string "metrics" HTTP basic authentication password
configuration.metrics.basic_auth.user string "metrics" HTTP basic authentication username
configuration.metrics.enabled bool false Whether or not Prometheus metrics are enabled.
configuration.mscs list ["msc2946"] Configuration for experimental MSC's. (Valid values are: msc2836 and msc2946)
configuration.profiling.enabled bool false Enable pprof. You will need to manually create a port forwarding to the deployment to access PPROF, as it will only listen on localhost and the defined port. e.g. kubectl port-forward deployments/dendrite 65432:65432
configuration.profiling.port int 65432 pprof port, if enabled
configuration.rate_limiting.cooloff_ms int 500 Cooloff time in milliseconds
configuration.rate_limiting.enabled bool true Enable rate limiting
configuration.rate_limiting.threshold int 20 After how many requests a rate limit should be activated
configuration.server_name string "" Servername for this Dendrite deployment
configuration.signing_key.create bool true Create a new signing key, if not exists
configuration.signing_key.existingSecret string "" Use an existing secret
configuration.tracing object disabled Default tracing configuration
configuration.trusted_third_party_id_servers list ["matrix.org","vector.im"] Lists of domains that the server will trust as identity servers to verify third party identifiers such as phone numbers and email addresses.
configuration.turn.turn_password string "" The TURN password
configuration.turn.turn_shared_secret string ""
configuration.turn.turn_uris list []
configuration.turn.turn_user_lifetime string "24h" Duration for how long users should be considered valid (see time.ParseDuration for more)
configuration.turn.turn_username string "" The TURN username
configuration.well_known_client_name string "" The server name to delegate client-server communications to, with optional port e.g. localhost:443
configuration.well_known_server_name string "" The server name to delegate server-server communications to, with optional port e.g. localhost:443
federationapi.disable_tls_validation bool false Disable TLS validation
federationapi.prefer_direct_fetch bool false
federationapi.send_max_retries int 16
image.name string "ghcr.io/matrix-org/dendrite-monolith:v0.10.8" Docker repository/image to use
image.pullPolicy string "IfNotPresent" Kubernetes pullPolicy
ingress.annotateFor string ""
ingress.annotations object {} Extra, custom annotations
ingress.className string ""
ingress.enabled bool false Create an ingress for a monolith deployment
ingress.hostName string ""
ingress.hosts list []
ingress.tls list []
mediaapi.dynamic_thumbnails bool false
mediaapi.max_file_size_bytes string "10485760" The max file size for uploaded media files
mediaapi.max_thumbnail_generators int 10 The maximum number of simultaneous thumbnail generators to run.
mediaapi.thumbnail_sizes list default dendrite config values A list of thumbnail sizes to be generated for media content.
persistence.jetstream.capacity string "1Gi"
persistence.jetstream.existingClaim string "" Use an existing volume claim for jetstream
persistence.media.capacity string "1Gi"
persistence.media.existingClaim string "" Use an existing volume claim for media files
persistence.search.capacity string "1Gi"
persistence.search.existingClaim string "" Use an existing volume claim for the fulltext search index
persistence.storageClass string ""
postgresql.auth.database string "dendrite"
postgresql.auth.password string "changeme"
postgresql.auth.username string "dendrite"
postgresql.enabled bool See value.yaml Enable and configure postgres as the database for dendrite.
postgresql.image.repository string "bitnami/postgresql"
postgresql.image.tag string "14.4.0"
postgresql.persistence.enabled bool false
resources object sets some sane default values Default resource requests/limits.
service.port int 80
service.type string "ClusterIP"
syncapi.real_ip_header string "X-Real-IP" This option controls which HTTP header to inspect to find the real remote IP address of the client. This is likely required if Dendrite is running behind a reverse proxy server.
syncapi.search object {"enabled":false,"language":"en"} Configuration for the full-text search engine.
syncapi.search.enabled bool false Whether or not search is enabled.
syncapi.search.language string "en" The language most likely to be used on the server - used when indexing, to ensure the returned results match expectations. A full list of possible languages can be found here