Home Catalog Prosody
general

Prosody

Prosody is a modern, lightweight XMPP (Jabber) communication server designed for efficiency and extensibility. Within the NjordDeploy ecosystem, this component provides a private and secure instant messaging platform. It allows users to host their own chat services, including: One-to-one messaging: Secure, real-time private conversations. Multi-User Chat (MUC): Group chat capabilities for family or teams. HTTP File Upload: Seamless sharing of photos and files directly from your own hardware. Modern Security: Automated TLS encryption using Let's Encrypt certificates via Nginx Proxy Manager. Note: This service requires port 5222 (client-to-server) and 5269 (server-to-server) to be forwarded in your router for external access.

ARM64 & AMD64
Docker & Rootless Podman
100% Self-Hosted (Zero Lock-in)
RAM Profile: Medium
Default Port: Port 5222

Why this Configuration?

Quick Start (Standalone Docker Compose)

The snippet below is immediately ready to run in any standard Docker or Podman environment:

services:
  prosody:
    image: prosody/prosody:latest
    container_name: prosody
    restart: unless-stopped
    networks:
      - njorddeploy_net
    ports:
      - "5222:5222"
      - "5269:5269"
    volumes:
      - prosody_config:/etc/prosody
      - prosody_data:/var/lib/prosody
    environment:
      - DOMAIN=localhost
      - ADMIN_USER=admin
      - ADMIN_PASS="ChangeMeSecurePassword123!"
      - MUC_PREFIX=conference
      - UPLOAD_PREFIX=upload

volumes:
  prosody_config:
    name: njorddeploy-prosody-config
  prosody_data:
    name: njorddeploy-prosody-data

networks:
  njorddeploy_net:

Start the service directly via the command line: docker compose up -d

Configuration & Environment Variables

Key configuration parameters and defaults derived from the NjordDeploy component template:

Variable Default Value Description
XMPP_DOMAIN *None* The main domain name for your Prosody server (e.g., example.com)
XMPP_ADMIN_USER admin The JID for the Admin User.
XMPP_ADMIN_PASSWORD *None* The password for the administrator account. This will be securely stored in the configuration.
XMPP_MUC_PREFIX conference The subdomain used for group chats. This value needs to be added as an A or CNAME record for your domain.
XMPP_UPLOAD_PREFIX upload The subdomain used for file sharing. This value needs to be added as an A or CNAME record for your domain.

Ecosystem & Enterprise Integration

Effortless Management with NjordDeploy

Deploy, monitor, and update this service with a single click on your own hardware via the NjordDeploy Configurator.