Dockerfile 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. ARG JITSI_REPO=jitsi
  2. ARG BASE_TAG=latest
  3. FROM ${JITSI_REPO}/base:${BASE_TAG} as builder
  4. RUN apt-dpkg-wrap apt-get update && \
  5. apt-dpkg-wrap apt-get install -y \
  6. lua5.2 \
  7. liblua5.2-dev \
  8. libsasl2-dev \
  9. libssl-dev \
  10. luarocks \
  11. git \
  12. gcc && \
  13. luarocks install cyrussasl 1.1.0-1 && \
  14. luarocks install net-url 0.9-1 && \
  15. luarocks install luajwtjitsi 2.0-0
  16. FROM ${JITSI_REPO}/base:${BASE_TAG}
  17. LABEL org.opencontainers.image.title="Prosody IM"
  18. LABEL org.opencontainers.image.description="XMPP server used for signalling."
  19. LABEL org.opencontainers.image.url="https://prosody.im/"
  20. LABEL org.opencontainers.image.source="https://github.com/jitsi/docker-jitsi-meet"
  21. LABEL org.opencontainers.image.documentation="https://jitsi.github.io/handbook/"
  22. ENV XMPP_CROSS_DOMAIN="false"
  23. ARG VERSION_MATRIX_USER_VERIFICATION_SERVICE_PLUGIN="1.7.0"
  24. RUN wget -qO /etc/apt/trusted.gpg.d/prosody.gpg https://prosody.im/files/prosody-debian-packages.key && \
  25. echo "deb http://packages.prosody.im/debian bullseye main" > /etc/apt/sources.list.d/prosody.list && \
  26. apt-dpkg-wrap apt-get update && \
  27. apt-dpkg-wrap apt-get install -y \
  28. prosody \
  29. libssl1.1 \
  30. libldap-common \
  31. sasl2-bin \
  32. libsasl2-modules-ldap \
  33. lua-basexx \
  34. lua-ldap \
  35. lua-sec \
  36. patch && \
  37. apt-cleanup && \
  38. rm -rf /etc/prosody && \
  39. apt-dpkg-wrap apt-get update && \
  40. apt-dpkg-wrap apt-get -d install -y jitsi-meet-prosody && \
  41. dpkg -x /var/cache/apt/archives/jitsi-meet-prosody*.deb /tmp/pkg && \
  42. mv /tmp/pkg/usr/share/jitsi-meet/prosody-plugins /prosody-plugins && \
  43. apt-cleanup && \
  44. rm -rf /tmp/pkg /var/cache/apt && \
  45. patch -d /usr/lib/prosody/modules/muc -p0 < /prosody-plugins/muc_owner_allow_kick.patch && \
  46. wget https://github.com/matrix-org/prosody-mod-auth-matrix-user-verification/archive/refs/tags/v$VERSION_MATRIX_USER_VERIFICATION_SERVICE_PLUGIN.tar.gz && \
  47. tar -xf v$VERSION_MATRIX_USER_VERIFICATION_SERVICE_PLUGIN.tar.gz && \
  48. mv prosody-mod-auth-matrix-user-verification-$VERSION_MATRIX_USER_VERIFICATION_SERVICE_PLUGIN/mod_auth_matrix_user_verification.lua /prosody-plugins && \
  49. mv prosody-mod-auth-matrix-user-verification-$VERSION_MATRIX_USER_VERIFICATION_SERVICE_PLUGIN/mod_matrix_power_sync.lua /prosody-plugins && \
  50. rm -rf prosody-mod-auth-matrix-user-verification-$VERSION_MATRIX_USER_VERIFICATION_SERVICE_PLUGIN v$VERSION_MATRIX_USER_VERIFICATION_SERVICE_PLUGIN.tar.gz
  51. COPY rootfs/ /
  52. COPY --from=builder /usr/local/lib/lua /usr/local/lib/lua
  53. COPY --from=builder /usr/local/share/lua /usr/local/share/lua
  54. EXPOSE 5222 5347 5280
  55. VOLUME ["/config", "/prosody-plugins-custom"]