Prosody is a cross-platform XMPP server written in Lua.
4.3K
Dockerfile to build a Prosody XMPP server container image.
The base Prosody image does not come with any preconfigured virtual hosts other than localhost. Users are expected to write their own virtual host and component configuration files and then mount them into the container at /etc/prosody/vhost.d/ and /etc/prosody/cmpt.d/ respectively. There are however a number of environment variables available to modify the global configuration as desired, these are documented below.
PROSODY_LOG_LEVELDefault value: info
Determines which log level to use for the console output, possible values are info, warn, error and debug.
PROSODY_MODULES_AVAILABLEDefault value: none
Example: -e PROSODY_MODULES_AVAILABLE='lastlog firewall swedishchef'
A space-separated list of modules to symlink from /opt/prosody-modules-available/
to /opt/prosody-modules-enabled/, does not enable them by default however. You then
need to specify within PROSODY_MODULES_ENABLED if you'd like them loaded globally.
PROSODY_MODULES_ENABLEDDefault value: none
Example: -e PROSODY_MODULES_ENABLED='websocket server_contact_info'
A space-separated list of modules to enable within the global modules_enabled configurartion block. This variable will also attempt to deduplicate any modules passed through.
PROSODY_MODULES_DISABLEDDefault value: none
Example: -e PROSODY_MODULES_DISABLED='s2s carbons'
A space-separated list of modules to disable, if they would be loaded automatically by Prosody.
PROSODY_DEFAULT_STORAGEDefault value: internal
Example: -e PROSODY_DEFAULT_STORAGE='sql'
PROSODY_STORAGE_<store>Default value: none
Example: -e PROSODY_STORAGE_ACCOUNTS='sql' -e PROSODY_STORAGE_ARCHIVE='sql'
A dynamic variable used to construct the storage array within the main
Prosody configuration file. Allows for extremely granular control of your Prosody
data stores.
PROSODY_NETWORK_BACKENDDefault value: "select"
PROSODY_ALLOW_REGISTRATIONDefault value: false
PROSODY_C2S_REQUIRE_ENCRYPTIONDefault value: true
PROSODY_S2S_REQUIRE_ENCRYPTIONDefault value: true
PROSODY_S2S_SECURE_AUTHDefault value: false
PROSODY_S2S_INSECURE_DOMAINSDefault value: none
A space-separated list of that will not be required to authenticate using certificates.
PROSODY_S2S_SECURE_DOMAINSDefault value: none
A space-separated list of domains which still require valid certificates
even if you leave s2s_secure_auth disabled.
If either PROSODY_DEFAULT_STORAGE or any of the PROSODY_STORAGE_<store> variables are set to sql, the entrypoint script will automatically detect this and make available the configuration options to allow for database connections as environment variables. The base image contains all three drivers needed to connect to PostgreSQL, MySQL or SQLite3 databases.
PROSODY_DB_DRIVERDefault value: PostgreSQL
PROSODY_DB_NAMEDefault value: prosody
PROSODY_DB_HOSTDefault value: postgresql
PROSODY_DB_PORTDefault value: 5432
PROSODY_DB_USERNAMEDefault value: prosody
PROSODY_DB_PASSWORDDefault value: none (will die if not set)
Content type
Image
Digest
Size
123.9 MB
Last updated
over 4 years ago
docker pull opusvl/prosody