{"id":15924818,"url":"https://github.com/jaywink/ansible-dendrite","last_synced_at":"2025-10-09T00:20:38.903Z","repository":{"id":45501401,"uuid":"323099315","full_name":"jaywink/ansible-dendrite","owner":"jaywink","description":"Deploy a Dendrite Matrix server using Docker.","archived":false,"fork":false,"pushed_at":"2022-09-18T00:05:55.000Z","size":46,"stargazers_count":5,"open_issues_count":0,"forks_count":2,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-19T03:53:52.821Z","etag":null,"topics":["ansible","dendrite","matrix"],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jaywink.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2020-12-20T15:09:17.000Z","updated_at":"2022-03-22T10:12:17.000Z","dependencies_parsed_at":"2023-01-18T13:00:34.095Z","dependency_job_id":null,"html_url":"https://github.com/jaywink/ansible-dendrite","commit_stats":null,"previous_names":[],"tags_count":9,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jaywink%2Fansible-dendrite","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jaywink%2Fansible-dendrite/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jaywink%2Fansible-dendrite/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jaywink%2Fansible-dendrite/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jaywink","download_url":"https://codeload.github.com/jaywink/ansible-dendrite/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245279967,"owners_count":20589554,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ansible","dendrite","matrix"],"created_at":"2024-10-06T21:40:56.788Z","updated_at":"2025-10-09T00:20:33.885Z","avatar_url":"https://github.com/jaywink.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# Dendrite\n\nDeploy a Dendrite (monolithic) Matrix server using Docker.\n\nhttps://github.com/matrix-org/dendrite\n\nTargeting Ubuntu 20.04, contributions welcome for a larger set of platforms.\n\n## Requirements\n\nDeveloped and tested on Ansible 2.9.6.\n\n## Usage\n\nYou can install this role from Ansible Galaxy with:\n\n```bash\nansible-galaxy install jaywink.ansible_dendrite\n```\n\nThe Dendrite container exposes an HTTP endpoint on localhost port 8008. You will need to\nset up a reverse proxy to handle TLS and proxy any `_matrix` path traffic to the container.\n\nA PostgreSQL database is also required.\n\nSet the required variables for your play.\n\nGenerate a signing key as follows. You'll need a Golang binary in your path.\n\n```bash\ngo get github.com/matrix-org/dendrite/cmd/generate-keys\ngo run github.com/matrix-org/dendrite/cmd/generate-keys --private-key=matrix_key.pem\n```\n\nCopy the contents of the generated `matrix_key.pem` file into the `dendrite_matrix_key_pem` variable.\n\nNow you can run the play and get a fresh Dendrite.\n\n## Role Variables\n\n### Required\n\n* `dendrite_server_name` - Dendrite server name (ie `domain.tld`)\n* `dendrite_matrix_key_pem` - The signing key\n* `dendrite_db_host` - Database hostname to use (PostgreSQL)\n* `dendrite_db_password` - Database password to use\n\n### Optional\n\n* `dendrite_name` - The name of the instance and user on the host to use, will be created (default: `dendrite`)\n* `dendrite_container_name` - Name to use for the Docker container (defaults to value of `dendrite_name` variable)\n* `dendrite_docker_image` - Docker image to use (defaults to: `matrixdotorg/dendrite-monolith:v0.9.8`)\n* `dendrite_db_name` - Database name to use (defaults to value of `dendrite_name` variable)\n* `dendrite_db_username` - Database user to use (defaults to value of `dendrite_name` variable)\n* `dendrite_db_sslmode` - Database SSL mode, set to `false` if your database is within an internal network (defaults to `true`)\n* `dendrite_metrics_enabled` - Whether to enable Prometheus metrics endpoint (default `false`)\n* `dendrite_metrics_basic_auth_username` - Username for basic auth of metrics (defaults to empty - no basic auth)\n* `dendrite_metrics_basic_auth_password` - Password for basic auth of metrics (defaults to empty - must be set if username is set)\n* `dendrite_client_api_registration_enabled` - Whether to allow registrations (defaults to `true`)\n* `dendrite_client_api_registration_shared_secret` - Registration shared secret for registering users (defaults to empty)\n* `dendrite_container_labels` - Labels to add to the container (defaults to empty dictionary)\n* `dendrite_docker_networks` - Additional docker networks to connect to (defaults to empty list)\n* `dendrite_enabled_mscs` - A list of MSC's to enable (defaults to empty, list should have lowercase items, for example `msc2836`)\n* `dendrite_logging_file` - Set to true to enable logging to file in addition to stdout (default false).\n  Logs will go to `/var/log/dendrite`. WARNING! There is no auto-deletion of old logs.\n* `dendrite_presence_enable_inbound` - Set to true to enable inbound presence (defaults to false)\n* `dendrite_presence_enable_outbound` - Set to true to enable outbound presence (defaults to false)\n* `dendrite_report_stats_enabled` - Report statistics to matrix.org (defaults to false)\n\n### Dependencies\n\nNone\n\n## License\n\nBSD\n\n## Author Information\n\nJason Robinson / `@jaywink:federator.dev` / https://jasonrobinson.me\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjaywink%2Fansible-dendrite","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjaywink%2Fansible-dendrite","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjaywink%2Fansible-dendrite/lists"}