d1ad412c59
a more efficient way to get prosody. Thanks to zash |
||
---|---|---|
.. | ||
assets | ||
Dockerfile | ||
README.md |
Prosody Docker image
Source: https://bitbucket.org/elfrinjo/dockerfiles/src/master/prosody-0.11/
Create an image for running prosody XMPP server version 0.11 http://prosody.im/ on Alpine Linux.
HINT: This is not an official image. Builds might not happen regularly.
You will need to configure a vhost inside the config volume (prosody.cfg.lua).
The certificate generation with prosodyctl does not work. However, certificates can be put into the config volume. I suggest acme.sh for communication with Letsencrypt. https://github.com/Neilpang/acme.sh/wiki/Run-acme.sh-in-docker You need to configure the certificates location inside prosodys config.
IPORTANT: You really should add TLS.
Upgrading from 0.10
The module configuration has to be updated:
- Replace mod_omemo_all_access with mod_profile
- Replace mod_mam_muc with mod_muc_mam
- Disable mod_omemo_all_access
Usage
Start the container with volumes for config and database. Do not forget to customize your configuration! . .
# docker run -d \
-p 5000:5000 \
-p 5222:5222 \
-p 5269:5269 \
-p 5280:5280 \
-p 5281:5281 \
--restart always \
--name prosody \
-v /etc/localtime:/etc/localtime:ro \
-v prosody-cfg:/usr/local/etc/prosody:ro \
-v prosody-data:/usr/local/var/lib/prosody \
elfrinjo/prosody-0.11
. . To create the first user, exec into the running container and use prosodyctl.
# docker exec -ti prosody bash
#/$ prosodyctl adduser JID
. . To Create a certificate for you host:
# docker pull neilpang/acme.sh
# docker run --rm -it \
--volume prosody-acme:/acme.sh \
--net=host \
neilpang/acme.sh --issue \
-d example.com \
-d conference.example.com \
--standalone
. . To renew the certificate:
# docker pull neilpang/acme.sh
# docker run --rm -it \
--volume prosody-acme:/acme.sh \
--net=host \
neilpang/acme.sh --cron --standalone
# docker run --rm \
-v prosody-acme:/acme.sh \
-v prosody-cfg:/target \
neilpang/acme.sh --install-cert \
-d example.com \
--key-file /target/certs/example.com/example.com.key \
--fullchain-file /target/certs/example.com/fullchain.cer
# docker restart prosody