Browse Source

misc: use lsb_release to get Debian version name

Saúl Ibarra Corretgé 1 năm trước cách đây
mục cha
commit
444d060a2a
3 tập tin đã thay đổi với 67 bổ sung56 xóa
  1. 9 6
      base-java/Dockerfile
  2. 17 19
      base/Dockerfile
  3. 41 31
      prosody/Dockerfile

+ 9 - 6
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

+ 17 - 19
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" ]

+ 41 - 31
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/ /