This is an automated email from the ASF dual-hosted git repository.

rzo1 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/storm-docker.git


The following commit(s) were added to refs/heads/master by this push:
     new b8be6ef  Update to Storm 2.8.1
b8be6ef is described below

commit b8be6ef59263919abd3eed95207198d2aca28518
Author: Richard Zowalla <[email protected]>
AuthorDate: Mon Jun 16 08:44:57 2025 +0200

    Update to Storm 2.8.1
---
 2.8.1-jre21/Dockerfile           | 102 +++++++++++++++++++++++++++++++++++++++
 2.8.1-jre21/docker-entrypoint.sh |  22 +++++++++
 2.8.1/Dockerfile                 | 102 +++++++++++++++++++++++++++++++++++++++
 2.8.1/docker-entrypoint.sh       |  22 +++++++++
 4 files changed, 248 insertions(+)

diff --git a/2.8.1-jre21/Dockerfile b/2.8.1-jre21/Dockerfile
new file mode 100644
index 0000000..2d03e10
--- /dev/null
+++ b/2.8.1-jre21/Dockerfile
@@ -0,0 +1,102 @@
+FROM eclipse-temurin:21-jre
+
+ENV STORM_CONF_DIR=/conf \
+    STORM_DATA_DIR=/data \
+    STORM_LOG_DIR=/logs
+
+# Remove the default user 'ubuntu' and its group
+RUN userdel -r ubuntu && \
+    groupdel ubuntu || true \
+
+# Add a user with an explicit UID/GID and create necessary directories
+# Print the result of the getent group 1000 command
+RUN set -eux; \
+    groupadd -r storm --gid=1000; \
+    useradd -r -g storm --uid=1000 storm; \
+    mkdir -p "$STORM_CONF_DIR" "$STORM_DATA_DIR" "$STORM_LOG_DIR"; \
+    chown -R storm:storm "$STORM_CONF_DIR" "$STORM_DATA_DIR" "$STORM_LOG_DIR"``
+
+# Install required packages
+RUN set -eux; \
+    apt-get update; \
+    DEBIAN_FRONTEND=noninteractive \
+    apt-get install -y --no-install-recommends \
+        bash \
+        ca-certificates \
+        dirmngr \
+        gosu \
+        gnupg \
+        python3 \
+        procps \
+        wget; \
+    rm -rf /var/lib/apt/lists/*; \
+# Verify that gosu binary works
+    gosu nobody true
+
+ARG DISTRO_NAME=apache-storm-2.8.0
+
+
+# Download Apache Storm, verify its PGP signature, untar and clean up
+RUN set -eux; \
+    ddist() { \
+        local f="$1"; shift; \
+        local distFile="$1"; shift; \
+        local success=; \
+        local distUrl=; \
+        for distUrl in \
+            'https://www.apache.org/dyn/closer.cgi?action=download&filename=' \
+            https://www-us.apache.org/dist/ \
+            https://www.apache.org/dist/ \
+            https://archive.apache.org/dist/ \
+        ; do \
+            if wget -q -O "$f" "$distUrl$distFile" && [ -s "$f" ]; then \
+                success=1; \
+                break; \
+            fi; \
+        done; \
+        [ -n "$success" ]; \
+    }; \
+    # Generated via automation/create-key-section.sh
+    importKeys() { \
+      for key in \
+      # Meng Li (Ethan Li CODE SIGNING KEY) <[email protected]>
+      5167DE337E7370373499FC1DA4A672F11B5050C8 \
+      # Kishorkumar Vasantrao Patil (CODE SIGNING KEY) 
<[email protected]>
+      32C8C0BEE3D01AF46B6E24B0AC30BFA8FEF0711F \
+      # Govind Rajagopal Menon (Release Signing Key) <[email protected]>
+      79B03D059E628478FC9F1D8B152CAD0C46E87B61 \
+      # Bipin Prasad (For Signing Apache Storm release) 
<[email protected]>
+      51379DA8A7AE5B02674EF15C134716AF768D9B6E \
+      # Aaron Gresch <[email protected]>
+      DA903F2CF9BBD42EAECFA9E45EA6FAEF09A4474D \
+      # Kishor Patil (The keys for signing Storm releases) 
<[email protected]>
+      6156BAC0C21A1991CF1B690AB2973D6F4A67943A \
+      # Richard Zowalla (Code Signing Key) <[email protected]>
+      B83D15E72253ED1104EB4FBBDAB472F0E5B8A431 \
+      # Richard Zowalla (GitHub) <[email protected]>
+      339F3B2F72129ABCA81D96DA91EA7956A2DAD9CE \
+      # Rui Abreu (Code Signing Key) <[email protected]>
+      72B436558AA9CDCA2C4CBAC340D4B35E2C1452E5 \
+      ; do \
+        gpg --batch --keyserver hkps://keyserver.ubuntu.com --recv-keys "$key" 
|| \
+        gpg --batch --keyserver hkps://keys.openpgp.org --recv-keys "$key" || \
+        gpg --batch --keyserver hkps://pgp.mit.edu --recv-keys "$key" || \
+        gpg --batch --keyserver hkps://keyserver.pgp.com --recv-keys "$key" ; \
+      done; \
+    }; \
+    ddist "$DISTRO_NAME.tar.gz" "storm/$DISTRO_NAME/$DISTRO_NAME.tar.gz"; \
+    ddist "$DISTRO_NAME.tar.gz.asc" 
"storm/$DISTRO_NAME/$DISTRO_NAME.tar.gz.asc"; \
+    export GNUPGHOME="$(mktemp -d)"; \
+    importKeys; \
+    gpg --batch --verify "$DISTRO_NAME.tar.gz.asc" "$DISTRO_NAME.tar.gz"; \
+    tar -xzf "$DISTRO_NAME.tar.gz"; \
+    rm -rf "$GNUPGHOME" "$DISTRO_NAME.tar.gz" "$DISTRO_NAME.tar.gz.asc"; \
+    mv "$DISTRO_NAME" apache-storm; \
+    chown -R storm:storm apache-storm
+
+WORKDIR apache-storm
+
+ENV PATH $PATH:/apache-storm/bin
+
+COPY docker-entrypoint.sh /
+ENTRYPOINT ["/docker-entrypoint.sh"]
diff --git a/2.8.1-jre21/docker-entrypoint.sh b/2.8.1-jre21/docker-entrypoint.sh
new file mode 100755
index 0000000..66dff6f
--- /dev/null
+++ b/2.8.1-jre21/docker-entrypoint.sh
@@ -0,0 +1,22 @@
+#!/bin/bash
+
+set -e
+
+# Allow the container to be started with `--user`
+if [ "$1" = 'storm' -a "$(id -u)" = '0' ]; then
+    chown -R storm:storm "$STORM_CONF_DIR" "$STORM_DATA_DIR" "$STORM_LOG_DIR"
+    exec gosu storm "$0" "$@"
+fi
+
+# Generate the config only if it doesn't exist
+CONFIG="$STORM_CONF_DIR/storm.yaml"
+if [ ! -f "$CONFIG" ]; then
+    cat << EOF > "$CONFIG"
+storm.zookeeper.servers: [zookeeper]
+nimbus.seeds: [nimbus]
+storm.log.dir: "$STORM_LOG_DIR"
+storm.local.dir: "$STORM_DATA_DIR"
+EOF
+fi
+
+exec "$@"
diff --git a/2.8.1/Dockerfile b/2.8.1/Dockerfile
new file mode 100644
index 0000000..cbc103b
--- /dev/null
+++ b/2.8.1/Dockerfile
@@ -0,0 +1,102 @@
+FROM eclipse-temurin:17-jre
+
+ENV STORM_CONF_DIR=/conf \
+    STORM_DATA_DIR=/data \
+    STORM_LOG_DIR=/logs
+
+# Remove the default user 'ubuntu' and its group
+RUN userdel -r ubuntu && \
+    groupdel ubuntu || true \
+
+# Add a user with an explicit UID/GID and create necessary directories
+# Print the result of the getent group 1000 command
+RUN set -eux; \
+    groupadd -r storm --gid=1000; \
+    useradd -r -g storm --uid=1000 storm; \
+    mkdir -p "$STORM_CONF_DIR" "$STORM_DATA_DIR" "$STORM_LOG_DIR"; \
+    chown -R storm:storm "$STORM_CONF_DIR" "$STORM_DATA_DIR" "$STORM_LOG_DIR"``
+
+# Install required packages
+RUN set -eux; \
+    apt-get update; \
+    DEBIAN_FRONTEND=noninteractive \
+    apt-get install -y --no-install-recommends \
+        bash \
+        ca-certificates \
+        dirmngr \
+        gosu \
+        gnupg \
+        python3 \
+        procps \
+        wget; \
+    rm -rf /var/lib/apt/lists/*; \
+# Verify that gosu binary works
+    gosu nobody true
+
+ARG DISTRO_NAME=apache-storm-2.8.0
+
+
+# Download Apache Storm, verify its PGP signature, untar and clean up
+RUN set -eux; \
+    ddist() { \
+        local f="$1"; shift; \
+        local distFile="$1"; shift; \
+        local success=; \
+        local distUrl=; \
+        for distUrl in \
+            'https://www.apache.org/dyn/closer.cgi?action=download&filename=' \
+            https://www-us.apache.org/dist/ \
+            https://www.apache.org/dist/ \
+            https://archive.apache.org/dist/ \
+        ; do \
+            if wget -q -O "$f" "$distUrl$distFile" && [ -s "$f" ]; then \
+                success=1; \
+                break; \
+            fi; \
+        done; \
+        [ -n "$success" ]; \
+    }; \
+    # Generated via automation/create-key-section.sh
+    importKeys() { \
+      for key in \
+      # Meng Li (Ethan Li CODE SIGNING KEY) <[email protected]>
+      5167DE337E7370373499FC1DA4A672F11B5050C8 \
+      # Kishorkumar Vasantrao Patil (CODE SIGNING KEY) 
<[email protected]>
+      32C8C0BEE3D01AF46B6E24B0AC30BFA8FEF0711F \
+      # Govind Rajagopal Menon (Release Signing Key) <[email protected]>
+      79B03D059E628478FC9F1D8B152CAD0C46E87B61 \
+      # Bipin Prasad (For Signing Apache Storm release) 
<[email protected]>
+      51379DA8A7AE5B02674EF15C134716AF768D9B6E \
+      # Aaron Gresch <[email protected]>
+      DA903F2CF9BBD42EAECFA9E45EA6FAEF09A4474D \
+      # Kishor Patil (The keys for signing Storm releases) 
<[email protected]>
+      6156BAC0C21A1991CF1B690AB2973D6F4A67943A \
+      # Richard Zowalla (Code Signing Key) <[email protected]>
+      B83D15E72253ED1104EB4FBBDAB472F0E5B8A431 \
+      # Richard Zowalla (GitHub) <[email protected]>
+      339F3B2F72129ABCA81D96DA91EA7956A2DAD9CE \
+      # Rui Abreu (Code Signing Key) <[email protected]>
+      72B436558AA9CDCA2C4CBAC340D4B35E2C1452E5 \
+      ; do \
+        gpg --batch --keyserver hkps://keyserver.ubuntu.com --recv-keys "$key" 
|| \
+        gpg --batch --keyserver hkps://keys.openpgp.org --recv-keys "$key" || \
+        gpg --batch --keyserver hkps://pgp.mit.edu --recv-keys "$key" || \
+        gpg --batch --keyserver hkps://keyserver.pgp.com --recv-keys "$key" ; \
+      done; \
+    }; \
+    ddist "$DISTRO_NAME.tar.gz" "storm/$DISTRO_NAME/$DISTRO_NAME.tar.gz"; \
+    ddist "$DISTRO_NAME.tar.gz.asc" 
"storm/$DISTRO_NAME/$DISTRO_NAME.tar.gz.asc"; \
+    export GNUPGHOME="$(mktemp -d)"; \
+    importKeys; \
+    gpg --batch --verify "$DISTRO_NAME.tar.gz.asc" "$DISTRO_NAME.tar.gz"; \
+    tar -xzf "$DISTRO_NAME.tar.gz"; \
+    rm -rf "$GNUPGHOME" "$DISTRO_NAME.tar.gz" "$DISTRO_NAME.tar.gz.asc"; \
+    mv "$DISTRO_NAME" apache-storm; \
+    chown -R storm:storm apache-storm
+
+WORKDIR apache-storm
+
+ENV PATH $PATH:/apache-storm/bin
+
+COPY docker-entrypoint.sh /
+ENTRYPOINT ["/docker-entrypoint.sh"]
diff --git a/2.8.1/docker-entrypoint.sh b/2.8.1/docker-entrypoint.sh
new file mode 100755
index 0000000..66dff6f
--- /dev/null
+++ b/2.8.1/docker-entrypoint.sh
@@ -0,0 +1,22 @@
+#!/bin/bash
+
+set -e
+
+# Allow the container to be started with `--user`
+if [ "$1" = 'storm' -a "$(id -u)" = '0' ]; then
+    chown -R storm:storm "$STORM_CONF_DIR" "$STORM_DATA_DIR" "$STORM_LOG_DIR"
+    exec gosu storm "$0" "$@"
+fi
+
+# Generate the config only if it doesn't exist
+CONFIG="$STORM_CONF_DIR/storm.yaml"
+if [ ! -f "$CONFIG" ]; then
+    cat << EOF > "$CONFIG"
+storm.zookeeper.servers: [zookeeper]
+nimbus.seeds: [nimbus]
+storm.log.dir: "$STORM_LOG_DIR"
+storm.local.dir: "$STORM_DATA_DIR"
+EOF
+fi
+
+exec "$@"

Reply via email to