FROM debian:bookworm-slim
ENV LANG=C.UTF-8

RUN useradd -u 10000 prosody -d /var/lib/prosody -M 

RUN apt-get update \
    && DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
        lua5.4 liblua5.4-dev prosody prosody-modules anacron idn2 lua-unbound luarocks ca-certificates \
    && prosodyctl install --server=https://modules.prosody.im/rocks/ mod_privilege \
    && rm -f /etc/cron.daily/apt-compat /etc/cron.daily/dpkg /etc/cron.daily/passwd \
    && apt-get autoremove -y \
    && rm -rf /var/lib/apt/lists/* \
    && rm -rf /var/cache/*

# See https://prosody.im/doc/ports
# File Transfer Proxy (mod_proxy65) !NotConfigured
#EXPOSE 5000/tcp
# Client connections
EXPOSE 5222/tcp
# s2s Connections
EXPOSE 5269/tcp
# HTTPS (http_files for no-upload support)
EXPOSE 5281/tcp
# External components !DoNotPublish
EXPOSE 5347/tcp

COPY --chmod=555 refresh-certs.cron /etc/cron.daily/refresh-certs
COPY --chmod=555 entrypoint.sh /entrypoint.sh
COPY --chmod=555 config/ /config/

ENTRYPOINT "/entrypoint.sh"
