🚀 Prosody (XMPP) on Cloudron: Community package now available
-
Prosody is a lightweight, modern XMPP server. This package turns your Cloudron into a private chat-and-calls server where every account is one of your existing Cloudron users: 1:1 chat, group chat, multi-device sync with history, file sharing, and 1:1 audio/video calls — with standard clients like Conversations (Android), Gajim, Dino and Kaidan (desktop).
JIDs are simply
user@xmpp.example.com— the app's own domain is the XMPP host, which sidesteps the apex-certificate problem that stalled earlier XMPP-on-Cloudron efforts. Real certificates on the XMPP ports come from thetlsaddon, logins from theldapaddon, and calls work through NAT via theturnaddon.Links
- Project: https://prosody.im — docs: https://prosody.im/doc/
- Package: https://github.com/OrcVole/prosody-cloudron
- Image:
ghcr.io/orcvole/prosody-cloudron(pinned by digest in the versions file)
How to install
From the dashboard: click Add custom app (top right in the App Store), choose Community app, and paste this URL:
https://raw.githubusercontent.com/OrcVole/prosody-cloudron/main/CloudronVersions.jsonOr from the CLI:
cloudron install --location xmpp \ --versions-url https://raw.githubusercontent.com/OrcVole/prosody-cloudron/main/CloudronVersions.jsonThen add the group-chat component as an app alias so federation gets its own trusted certificate:
cloudron configure --app xmpp.example.com --alias-domains conference.xmpp.example.comLog in from any XMPP client with your Cloudron username (or email) and password. If login fails as if the password were wrong, enable SASL PLAIN / "allow cleartext auth" in the client — safe here, TLS is required first.
Status
Running in production since June; verified on Cloudron 9.2.0. Scores 91% on compliance.conversations.im with Prosody 13.0.6 stable. Chat, MUC federation on CA-trusted certs, file upload, multi-device sync and TURN-relayed calls all verified.
Caveats
- Calls are server-ready, but mobile/macOS XMPP calling clients are still immature — Linux desktop (Dino/Kaidan) is the proven path today.
- If your server sits behind a cloud security group, ports 5222/5223/5269 (TCP) plus the TURN ports (3478/5349 and the UDP relay range) must be reachable from the internet.
- Prosody is a backend service — the app's web address intentionally shows no UI.
Unofficial, community-maintained package. Longer technical write-up (packaging notes, cert discovery, what bit us) in the existing XMPP thread: https://forum.cloudron.io/topic/10465/xmpp-server-prosody
-
@loudlemur just interested :
- why Prosody not Snikket ?
- issues with Snikket ?
Trying to decide a chat app for a new group.
-
@loudlemur just interested :
- why Prosody not Snikket ?
- issues with Snikket ?
Trying to decide a chat app for a new group.
why Prosody not Snikket ?
Hi, Tim!
At the time, our main candidate was ejabberd, but it provd too difficult. A couple of valiant souls had already attempted packaging ejabberd for Cloudron without success. It has a very complex config file, Cloudron doesn't have Erlang in its base image.
We didn't really look at Snikket, but:
- Logins: Snikket runs on Prosody but makes its own decisions. Accounts are created by invitation and managed in Snikket's own web portal. As far as I know it has no LDAP or outside login source, which is exactly what our package is built around: every Cloudron user already has an account. Making Snikket use Cloudron logins would mean fighting the product's whole design.
- Infrastructure: Snikket expects to run its own certificate handling, reverse proxy and TURN relay (the server that lets calls through firewalls). Cloudron provides all three, so we would be removing parts of Snikket rather than packaging it.
- Domains: Snikket needs its main domain plus groups. and share. subdomains. The alias trick would probably cover those, so this one isn't a blocker.
- Snikket's real strength: its own branded mobile apps and a smooth invite-a-friend flow. That matters most for setups with people outside the server's user base, and our use case is Cloudron users.
-
Thanks for the feedback @loudlemur
I took a quick look at packaging but Snikket is too much for my needs, so I parked it.
Looked at using your Prosody but it's also more than the simple chat I was looking for (packaged Campfire instead and will see how that goes). -
Thanks for the feedback @loudlemur
I took a quick look at packaging but Snikket is too much for my needs, so I parked it.
Looked at using your Prosody but it's also more than the simple chat I was looking for (packaged Campfire instead and will see how that goes).@timconsidine https://forum.cloudron.io/search?in=titlesposts&term=discord slack alternative
Tian, Quiet, Pager, Haven, Spacebar, Stoat (Revolt), Buzz
What are you looking for?
-
What are you looking for?
That is a really great question @robi !
When I work it out ....
Seriously, list started as :- something that worked
- something that is not WhatsApp
- something that is simple and intuitive for non-tech users
But thank you for the suggestions !
More research to be done.
Stoat was always interesting, time to take another look.
Hello! It looks like you're interested in this conversation, but you don't have an account yet.
Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.
With your input, this post could be even better 💗
Register Login