{"id":13552285,"url":"https://github.com/silvio/docker-matrix","last_synced_at":"2026-01-10T03:52:34.263Z","repository":{"id":27509767,"uuid":"30990380","full_name":"silvio/docker-matrix","owner":"silvio","description":"docker image for matrix.org","archived":true,"fork":false,"pushed_at":"2022-02-03T13:58:08.000Z","size":169,"stargazers_count":142,"open_issues_count":2,"forks_count":76,"subscribers_count":16,"default_branch":"master","last_synced_at":"2024-11-03T23:34:37.532Z","etag":null,"topics":["coturn","docker","docker-image","homeserver","matrix","shell","synapse","turn-servers"],"latest_commit_sha":null,"homepage":null,"language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/silvio.png","metadata":{"files":{"readme":"readme.md","changelog":null,"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":"2015-02-18T22:24:49.000Z","updated_at":"2023-12-08T00:14:43.000Z","dependencies_parsed_at":"2022-09-02T09:11:13.300Z","dependency_job_id":null,"html_url":"https://github.com/silvio/docker-matrix","commit_stats":null,"previous_names":[],"tags_count":47,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/silvio%2Fdocker-matrix","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/silvio%2Fdocker-matrix/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/silvio%2Fdocker-matrix/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/silvio%2Fdocker-matrix/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/silvio","download_url":"https://codeload.github.com/silvio/docker-matrix/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246933381,"owners_count":20857047,"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":["coturn","docker","docker-image","homeserver","matrix","shell","synapse","turn-servers"],"created_at":"2024-08-01T12:02:01.718Z","updated_at":"2026-01-10T03:52:34.193Z","avatar_url":"https://github.com/silvio.png","language":"Shell","funding_links":["https://liberapay.com/docker-matrix/"],"categories":["Shell","docker"],"sub_categories":[],"readme":"# Docker image for Matrix\n\n- [Matrix Chat](https://riot.im/app/#/room/#dockermatrix:matrix.aventer.biz)\n- [Docker Hub](https://hub.docker.com/r/avhost/docker-matrix/tags)\n- [Donation](https://liberapay.com/docker-matrix/)\n\n## Notice\n\nWith v0.99.5 we publish some changes that can breake the backward compatibility.\n\nWe change to python3. We could not test everything. Please come into our chat and/or open a issue on github. \n\nPlease make sure to use our tagged docker images and not the latest one. Specifically in a production environment you should never use :latest as that the version can be broken.\n\n## Creating Issues and Pull request\n\nWe are working with the repository at \"https://github.com/AVENTER-UG/docker-matrix\". If you want to open issues or create pull request, please use that repository.\n\n## Security\n\nWe verify the docker layers of our image automaticly with clair. Matrix is not a part of the vulnerability scan, which  means clair will only find vulnerabilities that are part of the OS (operating system).\n\n## Introduction\n\nDockerfile for installation of [matrix] open federated Instant Messaging and\nVoIP communication server.\n\nThe riot.im web client has now his own docker file at [github].\n\n[matrix]: https://matrix.org\n[github]: https://github.com/AVENTER-UG/matrix-riot-docker\n\n## Contribution\n\nIf you want contribute to this project feel free to fork this project, do your\nwork in a branch and create a pull request.\n\nTo support this Dockerimage please pledge via [liberapay].\n\n[liberapay]: https://liberapay.com/docker-matrix/\n\n## Configuration\n\nTo configure run the image with \"generate\" as argument. You have to setup the\nserver domain and a `/data`-directory. After this you have to edit the\ngenerated homeserver.yaml file.\n\nPlease read the synapse [readme file] about configuration settings, \nthere is also an [example setup] available to read.\n\n[readme file]: https://github.com/matrix-org/synapse/blob/master/README.rst\n[example setup]: https://github.com/AVENTER-UG/docker-matrix/blob/master/Example.configs.md\n\nTo get the things done, \"generate\" will create a self-signed certificate, which should be replaced with a valid certificate if used in production, either by giving synapse access to the valid certificate, or by using a reverse proxy.\n\nIt is recommended to run the container with a --user \u003cUID\u003e:\u003cGID\u003e flag, to prevent the container from running as root. However, the synapse process will not run as root if the user flag is not supplied.\n\nExample:\n\n    $ docker run -v /tmp/data:/data --rm --user 991:991 -e SERVER_NAME=localhost -e REPORT_STATS=no avhost/docker-matrix:\u003cVERSION\u003e generate\n\n## Start\n\nFor starting you need the port bindings and a mapping for the\n`/data`-directory.\n\n    $ docker run -d --user 991:991 -p 8448:8448 -p 8008:8008 -p 3478:3478 -v /tmp/data:/data avhost/docker-matrix:\u003cVERSION\u003e start\n\n## Port configurations\n\n### Matrix Homeserver\n\nThe following ports are used in the container for the Matrix server. You can use `-p`-option on\n`docker run` to configure this part (eg.: `-p 443:8448`):  \n`8008,8448 tcp`\n\n### Coturn server\n\nIf you only need STUN to work you  need the following ports:  \n`3478, 5349 udp/tcp`  \nThe server has the following as alt-ports: `3479, 5350 udp/tcp`\n\nFor TURN (using the server as a relay) you also need to forward this portrange:  \n`49152-65535/udp`  \n\nYou may also have to set the external ip of the server in turnserver.conf which is located in the `/data` volume:  \n`external-ip=XX.XX.XX.XX`\n\nIn case you don't want to expose the whole port range on udp you can change the portrange in turnserver.conf:  \n`min-port=XXXXX`  \n`max-port=XXXXX`  \n\n## Version information\n\nTo get the installed synapse version you can run the image with `version` as\nargument or look at the container via cat.\n\n    $ docker run -ti --rm avhost/docker-matrix:\u003cVERSION\u003e version\n    -=\u003e Matrix Version\n    synapse: master (7e0a1683e639c18bd973f825b91c908966179c15)\n    coturn:  master (88bd6268d8f4cdfdfaffe4f5029d489564270dd6)\n\n    # docker exec -it CONTAINERID cat /synapse.version\n    synapse: master (7e0a1683e639c18bd973f825b91c908966179c15)\n    coturn:  master (88bd6268d8f4cdfdfaffe4f5029d489564270dd6)\n\n\n## Environment variables\n\n* `SERVER_NAME`: Server and domain name, mandatory, needed only  for `generate`\n* `REPORT_STATS`: statistic report, mandatory, values: `yes` or `no`, needed\n  only for `generate`\n* `MATRIX_UID`/`MATRIX_GID`: UserID and GroupID of user within container which\n  runs the synapse server, if the --user flag is not supplied. The files mounted under /data are `chown`ed to this\n  ownership. Default is `MATRIX_UID=991` and `MATRIX_GID=991`. It can overriden\n  via `-e MATRIX_UID=...` and `-e MATRIX_GID=...` at start time.\n* `LD_PRELOAD` This is set by default to use jemalloc as memory allocator, as \n  that has been shown to greatly reduce the memory useage of synapse. To use the default malloc\n  the environmental variable has to be emptied, by adding `-e LD_PRELOAD` when running the container.\n\n## build specific arguments\n\n* `BV_SYN`: synapse version, optional, defaults to `master`\n* `BV_TUR`: coturn turnserver version, optional, defaults to `master`\n\nFor building of synapse version v0.11.0-rc2 and coturn with commit a9fc47e add\n`--build-arg BV_SYN=v0.11.0-rc2 --build-arg BV_TUR=a9fc47efd77` to the `docker\nbuild` command.\n\n## diff between system and fresh generated config file\n\nTo get a hint about new options etc you can do a diff between your configured\nhomeserver.yaml and a newly created config file. Call your image with `diff` as\nargument.\n\n\n```\n$ docker run --rm -ti -v /tmp/data:/data avhost/docker-matrix:\u003cVERSION\u003e diff\n[...]\n+# ldap_config:\n+#   enabled: true\n+#   server: \"ldap://localhost\"\n+#   port: 389\n+#   tls: false\n+#   search_base: \"ou=Users,dc=example,dc=com\"\n+#   search_property: \"cn\"\n+#   email_property: \"email\"\n+#   full_name_property: \"givenName\"\n[...]\n```\n\nFor generating of this output its `diff` from `busybox` used. The used diff\nparameters can be changed through `DIFFPARAMS` environment variable. The\ndefault is `Naur`.\n\n\n## Exported volumes\n\n* `/data`: data-container\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsilvio%2Fdocker-matrix","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsilvio%2Fdocker-matrix","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsilvio%2Fdocker-matrix/lists"}