Dockerfile for installation of matrix open federated Instant Messaging and VoIP communication server.
The riot.im web client has now his own docker file at github.
To configure run the image with "generate" as argument. You have to setup the
server domain and a /data
-directory. After this you have to edit the
generated homeserver.yaml file.
To get the things done, "generate" will create a own self-signed certificate.
This needs to be changed for production usage.
Example:
$ docker run -v /tmp/data:/data --rm -e SERVER_NAME=localhost -e REPORT_STATS=no silviof/docker-matrix generate
For starting you need the port bindings and a mapping for the
/data
-directory.
$ docker run -d -p 8448:8448 -p 3478:3478 -v /tmp/data:/data silviof/docker-matrix start
This following ports are used in the container. You can use -p
-option on
docker run
to configure this part (eg.: -p 443:8448
).
- turnserver: 3478,3479,5349,5350 udp and tcp
- homeserver: 8008,8448 tcp
To get the installed synapse version you can run the image with version
as
argument or look at the container via cat.
$ docker run -ti --rm silviof/docker-matrix version
-=> Matrix Version
synapse: master (7e0a1683e639c18bd973f825b91c908966179c15)
coturn: master (88bd6268d8f4cdfdfaffe4f5029d489564270dd6)
# docker exec -it CONTAINERID cat /synapse.version
synapse: master (7e0a1683e639c18bd973f825b91c908966179c15)
coturn: master (88bd6268d8f4cdfdfaffe4f5029d489564270dd6)
SERVER_NAME
: Server and domain name, mandatory, needed only forgenerate
REPORT_STATS
: statistic report, mandatory, values:yes
orno
, needed only forgenerate
BV_SYN
: synapse version, optional, defaults tomaster
BV_TUR
: coturn turnserver version, optional, defaults tomaster
For building of synapse version v0.11.0-rc2 and coturn with commit a9fc47e add
--build-arg BV_SYN=v0.11.0-rc2 --build-arg BV_TUR=a9fc47efd77
to the docker build
command.
To get a hint about new options etc you can do a diff between your configured
homeserver.yaml and a newly created config file. Call your image with diff
as
argument.
$ docker run --rm -ti -v /tmp/data:/data silviof/docker-matrix diff
[...]
+# ldap_config:
+# enabled: true
+# server: "ldap://localhost"
+# port: 389
+# tls: false
+# search_base: "ou=Users,dc=example,dc=com"
+# search_property: "cn"
+# email_property: "email"
+# full_name_property: "givenName"
[...]
For generating of this output its diff
from busybox
used. The used diff
parameters can be changed through DIFFPARAMS
environment variable. The
default is Naur
.
/data
: data-container