Files
prosody-docker/Dockerfile
T
Matthew Wild 601945cb85 Dockerfile: Add BUILD_ID build argument
This can be used to break the cache when we know the upstream package has
changed. In CI we will probably just put the build number here.

Even though it is not currently exposed anywhere, it is available as an
environment variable in all RUN commands following the ARG. This should be
enough to avoid reusing cached layers between builds.
2025-02-18 12:27:36 +00:00

41 lines
1.2 KiB
Docker

FROM debian:bookworm-slim
MAINTAINER Prosody Developers <developers@prosody.im>
ARG PROSODY_PACKAGE=prosody-0.12
ARG LUA_PACKAGE=lua5.4
ARG BUILD_ID=
# Install dependencies
RUN apt-get update \
&& DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
extrepo tini \
&& extrepo enable prosody \
&& apt-get update \
&& DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
${PROSODY_PACKAGE} \
${LUA_PACKAGE} \
lua-unbound \
lua-sec \
lua-readline \
lua-dbi-sqlite3 \
lua-dbi-postgresql \
lua-dbi-mysql \
luarocks \
lib${LUA_PACKAGE}-dev \
&& update-alternatives --set lua-interpreter /usr/bin/${LUA_PACKAGE} \
&& rm -rf /var/lib/apt/lists/*
RUN mkdir -p /etc/prosody/conf.d /var/run/prosody \
&& chown prosody:prosody /etc/prosody/conf.d /var/run/prosody
COPY ./entrypoint.sh /entrypoint.sh
RUN chmod 755 /entrypoint.sh
ENTRYPOINT ["/usr/bin/tini", "--", "/entrypoint.sh"]
COPY ./configs/${PROSODY_PACKAGE}.cfg.lua /etc/prosody/prosody.cfg.lua
EXPOSE 80 443 5222 5269 5347 5280 5281
ENV __FLUSH_LOG yes
CMD ["prosody", "-F"]