diff --git a/base-java/Dockerfile b/base-java/Dockerfile index 7c8ae59..e77c640 100644 --- a/base-java/Dockerfile +++ b/base-java/Dockerfile @@ -2,10 +2,13 @@ ARG JITSI_REPO=jitsi ARG BASE_TAG=latest FROM ${JITSI_REPO}/base:${BASE_TAG} -RUN mkdir -p /usr/share/man/man1 && \ - mkdir -p /etc/apt/keyrings && \ - wget -qO - https://packages.adoptium.net/artifactory/api/gpg/key/public | tee /etc/apt/keyrings/adoptium.asc && \ - echo "deb [signed-by=/etc/apt/keyrings/adoptium.asc] https://packages.adoptium.net/artifactory/deb bookworm main" | tee /etc/apt/sources.list.d/adoptium.list && \ - apt-dpkg-wrap apt-get update && \ - apt-dpkg-wrap apt-get install -y temurin-11-jre && \ +RUN <<-EOF + set -x + mkdir -p /usr/share/man/man1 + mkdir -p /etc/apt/keyrings + wget -qO - https://packages.adoptium.net/artifactory/api/gpg/key/public > /etc/apt/keyrings/adoptium.asc + echo "deb [signed-by=/etc/apt/keyrings/adoptium.asc] https://packages.adoptium.net/artifactory/deb $(lsb_release -sc) main" > /etc/apt/sources.list.d/adoptium.list + apt-dpkg-wrap apt-get update + apt-dpkg-wrap apt-get install -y temurin-11-jre apt-cleanup +EOF diff --git a/base/Dockerfile b/base/Dockerfile index 5ada85f..adf4979 100644 --- a/base/Dockerfile +++ b/base/Dockerfile @@ -6,30 +6,28 @@ ENV S6_BEHAVIOUR_IF_STAGE2_FAILS=2 COPY rootfs / -RUN case ${TARGETPLATFORM} in \ +RUN <<-EOF + set -xe + case ${TARGETPLATFORM} in \ "linux/amd64") TPL_ARCH=amd64 ;; \ "linux/arm64") TPL_ARCH=arm64 ;; \ - esac && \ + esac case ${TARGETPLATFORM} in \ "linux/amd64") S6_ARCH=amd64 ;; \ "linux/arm64") S6_ARCH=aarch64 ;; \ - esac && \ - apt-dpkg-wrap apt-get update && \ - apt-dpkg-wrap apt-get install -y apt-transport-https apt-utils ca-certificates gnupg wget && \ - wget -qO /usr/bin/tpl https://github.com/jitsi/tpl/releases/download/v1.0.4/tpl-linux-${TPL_ARCH} && \ - wget -qO - https://github.com/just-containers/s6-overlay/releases/download/v1.22.1.0/s6-overlay-${S6_ARCH}.tar.gz | tar hxfz - -C / && \ - wget -qO - https://download.jitsi.org/jitsi-key.gpg.key | gpg --dearmour > /etc/apt/trusted.gpg.d/jitsi.gpg && \ - echo "deb https://download.jitsi.org $JITSI_RELEASE/" > /etc/apt/sources.list.d/jitsi.list && \ - echo "deb http://ftp.debian.org/debian bookworm-backports main" > /etc/apt/sources.list.d/backports.list && \ - apt-dpkg-wrap apt-get update && \ - apt-dpkg-wrap apt-get dist-upgrade -y && \ - apt-cleanup && \ + esac + apt-dpkg-wrap apt-get update + apt-dpkg-wrap apt-get install -y apt-transport-https apt-utils ca-certificates gnupg lsb-release wget + wget -qO /usr/bin/tpl https://github.com/jitsi/tpl/releases/download/v1.0.4/tpl-linux-${TPL_ARCH} + wget -qO - https://github.com/just-containers/s6-overlay/releases/download/v1.22.1.0/s6-overlay-${S6_ARCH}.tar.gz | tar hxfz - -C / + wget -qO - https://download.jitsi.org/jitsi-key.gpg.key | gpg --dearmour > /etc/apt/trusted.gpg.d/jitsi.gpg + echo "deb https://download.jitsi.org $JITSI_RELEASE/" > /etc/apt/sources.list.d/jitsi.list + echo "deb http://ftp.debian.org/debian $(lsb_release -sc)-backports main" > /etc/apt/sources.list.d/backports.list + apt-dpkg-wrap apt-get update + apt-dpkg-wrap apt-get dist-upgrade -y + [ "$JITSI_RELEASE" = "unstable" ] && apt-dpkg-wrap apt-get install -y jq procps curl vim iputils-ping net-tools || true + apt-cleanup chmod +x /usr/bin/tpl - -RUN [ "$JITSI_RELEASE" = "unstable" ] && \ - apt-dpkg-wrap apt-get update && \ - apt-dpkg-wrap apt-get install -y jq procps curl vim iputils-ping net-tools && \ - apt-cleanup || \ - true +EOF ENTRYPOINT [ "/init" ] diff --git a/prosody/Dockerfile b/prosody/Dockerfile index 6ae08e6..06f7632 100644 --- a/prosody/Dockerfile +++ b/prosody/Dockerfile @@ -3,7 +3,9 @@ ARG BASE_TAG=latest FROM ${JITSI_REPO}/base:${BASE_TAG} as builder -RUN apt-dpkg-wrap apt-get update && \ +RUN <<-EOF + set -x + apt-dpkg-wrap apt-get update apt-dpkg-wrap apt-get install -y \ build-essential \ lua5.4 \ @@ -11,13 +13,18 @@ RUN apt-dpkg-wrap apt-get update && \ libreadline-dev \ git \ unzip \ - wget && \ - mkdir /tmp/luarocks && \ - wget -qO - https://luarocks.github.io/luarocks/releases/luarocks-3.8.0.tar.gz | tar xfz - --strip-components 1 -C /tmp/luarocks && \ - cd /tmp/luarocks && ./configure && make && make install && cd - && \ - luarocks install basexx 0.4.1-1 && \ - luarocks install lua-cjson 2.1.0-1 && \ + wget + mkdir /tmp/luarocks + wget -qO - https://luarocks.github.io/luarocks/releases/luarocks-3.8.0.tar.gz | tar xfz - --strip-components 1 -C /tmp/luarocks + cd /tmp/luarocks + ./configure + make + make install + cd - + luarocks install basexx 0.4.1-1 + luarocks install lua-cjson 2.1.0-1 luarocks install net-url 0.9-1 +EOF FROM ${JITSI_REPO}/base:${BASE_TAG} @@ -30,9 +37,11 @@ LABEL org.opencontainers.image.documentation="https://jitsi.github.io/handbook/" ARG VERSION_JITSI_CONTRIB_PROSODY_PLUGINS="20230803" ARG VERSION_MATRIX_USER_VERIFICATION_SERVICE_PLUGIN="1.8.0" -RUN wget -qO /etc/apt/trusted.gpg.d/prosody.gpg https://prosody.im/files/prosody-debian-packages.key && \ - echo "deb http://packages.prosody.im/debian bookworm main" > /etc/apt/sources.list.d/prosody.list && \ - apt-dpkg-wrap apt-get update && \ +RUN <<-EOF + set -xe + wget -qO /etc/apt/trusted.gpg.d/prosody.gpg https://prosody.im/files/prosody-debian-packages.key + echo "deb http://packages.prosody.im/debian $(lsb_release -sc) main" > /etc/apt/sources.list.d/prosody.list + apt-dpkg-wrap apt-get update apt-dpkg-wrap apt-get install -y \ lua5.4 \ prosody \ @@ -44,28 +53,29 @@ RUN wget -qO /etc/apt/trusted.gpg.d/prosody.gpg https://prosody.im/files/prosody lua-ldap \ lua-luaossl \ lua-sec \ - lua-unbound && \ - apt-dpkg-wrap apt-get -d install -y jitsi-meet-prosody && \ - dpkg -x /var/cache/apt/archives/jitsi-meet-prosody*.deb /tmp/pkg && \ - mv /tmp/pkg/usr/share/jitsi-meet/prosody-plugins /prosody-plugins && \ - rm -rf /tmp/pkg /var/cache/apt && \ - apt-cleanup && \ - rm -rf /etc/prosody && \ - mv /usr/share/lua/5.3/inspect.lua /usr/share/lua/5.4/ && \ - rm -rf /usr/lib/lua/{5.1,5.2,5.3} && \ - rm -rf /usr/share/lua/{5.1,5.2,5.3} && \ - wget -qO /prosody-plugins/mod_auth_cyrus.lua https://hg.prosody.im/prosody-modules/raw-file/65438e4ba563/mod_auth_cyrus/mod_auth_cyrus.lua && \ - wget -qO /prosody-plugins/sasl_cyrus.lua https://hg.prosody.im/prosody-modules/raw-file/65438e4ba563/mod_auth_cyrus/sasl_cyrus.lua && \ - wget https://github.com/matrix-org/prosody-mod-auth-matrix-user-verification/archive/refs/tags/v$VERSION_MATRIX_USER_VERIFICATION_SERVICE_PLUGIN.tar.gz && \ - tar -xf v$VERSION_MATRIX_USER_VERIFICATION_SERVICE_PLUGIN.tar.gz && \ - mv prosody-mod-auth-matrix-user-verification-$VERSION_MATRIX_USER_VERIFICATION_SERVICE_PLUGIN/mod_auth_matrix_user_verification.lua /prosody-plugins && \ - mv prosody-mod-auth-matrix-user-verification-$VERSION_MATRIX_USER_VERIFICATION_SERVICE_PLUGIN/mod_matrix_power_sync.lua /prosody-plugins && \ - rm -rf prosody-mod-auth-matrix-user-verification-$VERSION_MATRIX_USER_VERIFICATION_SERVICE_PLUGIN v$VERSION_MATRIX_USER_VERIFICATION_SERVICE_PLUGIN.tar.gz && \ - wget -q https://github.com/jitsi-contrib/prosody-plugins/archive/refs/tags/v$VERSION_JITSI_CONTRIB_PROSODY_PLUGINS.tar.gz && \ - tar -xf v$VERSION_JITSI_CONTRIB_PROSODY_PLUGINS.tar.gz && \ - mv prosody-plugins-$VERSION_JITSI_CONTRIB_PROSODY_PLUGINS/auth_hybrid_matrix_token/mod_auth_hybrid_matrix_token.lua /prosody-plugins && \ - mv prosody-plugins-$VERSION_JITSI_CONTRIB_PROSODY_PLUGINS/auth_hybrid_matrix_token/mod_matrix_affiliation.lua /prosody-plugins && \ + lua-unbound + apt-dpkg-wrap apt-get -d install -y jitsi-meet-prosody + dpkg -x /var/cache/apt/archives/jitsi-meet-prosody*.deb /tmp/pkg + mv /tmp/pkg/usr/share/jitsi-meet/prosody-plugins /prosody-plugins + rm -rf /tmp/pkg /var/cache/apt + apt-cleanup + rm -rf /etc/prosody + mv /usr/share/lua/5.3/inspect.lua /usr/share/lua/5.4/ + rm -rf /usr/lib/lua/{5.1,5.2,5.3} + rm -rf /usr/share/lua/{5.1,5.2,5.3} + wget -qO /prosody-plugins/mod_auth_cyrus.lua https://hg.prosody.im/prosody-modules/raw-file/65438e4ba563/mod_auth_cyrus/mod_auth_cyrus.lua + wget -qO /prosody-plugins/sasl_cyrus.lua https://hg.prosody.im/prosody-modules/raw-file/65438e4ba563/mod_auth_cyrus/sasl_cyrus.lua + wget https://github.com/matrix-org/prosody-mod-auth-matrix-user-verification/archive/refs/tags/v$VERSION_MATRIX_USER_VERIFICATION_SERVICE_PLUGIN.tar.gz + tar -xf v$VERSION_MATRIX_USER_VERIFICATION_SERVICE_PLUGIN.tar.gz + mv prosody-mod-auth-matrix-user-verification-$VERSION_MATRIX_USER_VERIFICATION_SERVICE_PLUGIN/mod_auth_matrix_user_verification.lua /prosody-plugins + mv prosody-mod-auth-matrix-user-verification-$VERSION_MATRIX_USER_VERIFICATION_SERVICE_PLUGIN/mod_matrix_power_sync.lua /prosody-plugins + rm -rf prosody-mod-auth-matrix-user-verification-$VERSION_MATRIX_USER_VERIFICATION_SERVICE_PLUGIN v$VERSION_MATRIX_USER_VERIFICATION_SERVICE_PLUGIN.tar.gz + wget -q https://github.com/jitsi-contrib/prosody-plugins/archive/refs/tags/v$VERSION_JITSI_CONTRIB_PROSODY_PLUGINS.tar.gz + tar -xf v$VERSION_JITSI_CONTRIB_PROSODY_PLUGINS.tar.gz + mv prosody-plugins-$VERSION_JITSI_CONTRIB_PROSODY_PLUGINS/auth_hybrid_matrix_token/mod_auth_hybrid_matrix_token.lua /prosody-plugins + mv prosody-plugins-$VERSION_JITSI_CONTRIB_PROSODY_PLUGINS/auth_hybrid_matrix_token/mod_matrix_affiliation.lua /prosody-plugins rm -rf prosody-plugins-$VERSION_JITSI_CONTRIB_PROSODY_PLUGINS v$VERSION_JITSI_CONTRIB_PROSODY_PLUGINS.tar.gz +EOF COPY rootfs/ /