aboutsummaryrefslogtreecommitdiff
path: root/cluster/prod/app/jitsi/build/jitsi-xmpp
diff options
context:
space:
mode:
Diffstat (limited to 'cluster/prod/app/jitsi/build/jitsi-xmpp')
-rw-r--r--cluster/prod/app/jitsi/build/jitsi-xmpp/Dockerfile35
-rwxr-xr-xcluster/prod/app/jitsi/build/jitsi-xmpp/xmpp_prosody9
2 files changed, 44 insertions, 0 deletions
diff --git a/cluster/prod/app/jitsi/build/jitsi-xmpp/Dockerfile b/cluster/prod/app/jitsi/build/jitsi-xmpp/Dockerfile
new file mode 100644
index 0000000..a060fda
--- /dev/null
+++ b/cluster/prod/app/jitsi/build/jitsi-xmpp/Dockerfile
@@ -0,0 +1,35 @@
+FROM debian:bookworm as builder
+
+RUN apt-get update && \
+ apt-get install -y git unzip
+
+ARG MEET_TAG
+RUN git clone --depth 1 --branch ${MEET_TAG} https://github.com/jitsi/jitsi-meet/
+
+FROM debian:bookworm
+
+ARG PROSODY_VERSION
+RUN apt-get update && \
+ apt-get install -y wget gnupg2 && \
+ echo deb http://packages.prosody.im/debian buster main \
+ | tee -a /etc/apt/sources.list && \
+ wget https://prosody.im/files/prosody-debian-packages.key -O - \
+ | apt-key add - && \
+ apt-get update && \
+ apt-get install -y prosody=${PROSODY_VERSION} lua-event
+
+RUN mkdir -p /usr/local/share/ca-certificates/ && \
+ ln -sf \
+ /var/lib/prosody/certs/auth.jitsi.crt \
+ /usr/local/share/ca-certificates/auth.jitsi.crt && \
+ mkdir /run/prosody && \
+ touch /run/prosody/prosody.pid && \
+ mkdir -p /var/lib/prosody && \
+ chown -R prosody:prosody /var/lib/prosody /run/prosody
+
+COPY --from=builder /jitsi-meet/resources/prosody-plugins /usr/share/jitsi-meet/prosody-plugins/
+COPY xmpp_prosody /usr/local/bin/xmpp_prosody
+
+WORKDIR /var/lib/prosody
+USER prosody
+CMD ["/usr/local/bin/xmpp_prosody"]
diff --git a/cluster/prod/app/jitsi/build/jitsi-xmpp/xmpp_prosody b/cluster/prod/app/jitsi/build/jitsi-xmpp/xmpp_prosody
new file mode 100755
index 0000000..af179e5
--- /dev/null
+++ b/cluster/prod/app/jitsi/build/jitsi-xmpp/xmpp_prosody
@@ -0,0 +1,9 @@
+#!/bin/bash
+prosodyctl register focus auth.jitsi ${JICOFO_AUTH_PASSWORD}
+prosodyctl register jvb auth.jitsi ${JVB_AUTH_PASSWORD}
+
+# copied from jitsi-meet.postinst
+# Make sure the focus@auth user's roster includes the proxy component (this is idempotent)
+prosodyctl mod_roster_command subscribe focus.jitsi focus@auth.jitsi
+
+exec prosody