prosody runs as unpriviledged user inside of its docker container with
this uid/gid:
root@676f7272aaa6:/etc/prosody# id prosody
uid=101(prosody) gid=102(prosody) groups=102(prosody),101(ssl-cert)
The certs dir has 0750 permissions and thus the process can not access
it and finds no certs, leading to stream errors for s2s and c2s
connections. We can not use group name, because the same group has a
different gid on the host. Numerical is fine (even if ansible needs
this as a string, `chown` seems to know how to handle this).
References: !119
Signed-off-by: Alexander Dahl <alex@netz39.de>
The previous configuration was copied over from helium.n39.eu for
prosody v0.9 and did only work more or less by accident. The new
configuration was done based on the upstream example configuration.
Some modules we used for 0.9 were replaced, some are not necessary
anymore, some modules are new for 0.11. The list was reviewed carefully
on a test host, and proved to work for several months there.
The VirtualHost 'localhost' is kept, but moved from a separate
configuration file to the main configuration, because it's only one line
and it's part of the example config anyways.
To install docker on a host you have to put it into that group in
inventory now, instead of adding the role to each host playbook. Idea
is to extend the group docker_host playbook by more docker related
things as for example metrics and monitoring.
Docker does not take the tzdata from host systems, so the
timezone needs to be set individually.
Otherwise dates without explicit timezone information or Z will
be generated or interpreted in the wrong timezone
(such as dokuwiki signatures)