1414# See the License for the specific language governing permissions and
1515# limitations under the License.
1616
17- FROM golang:1.17.8-buster AS go
18- RUN go install github.com/rexray/gocsi/csc@latest
19-
2017# Security update RHSA-2026:0067 breaks tar on arm64.
2118# Remove exclusion if package newer than tar-1.34-9.el9_7 is available (and works OK)
2219FROM rockylinux/rockylinux:9
@@ -28,6 +25,7 @@ RUN set -eux ; \
2825 diffutils \
2926 findutils \
3027 fuse \
28+ java-1.8.0-openjdk-headless \
3129 jq \
3230 krb5-workstation \
3331 libxcrypt-compat \
@@ -46,35 +44,6 @@ RUN set -eux ; \
4644 && ln -sf /usr/bin/python3 /usr/bin/python
4745RUN python3 -m pip install --upgrade pip
4846
49- # CSI / k8s / fuse / goofys dependency
50- COPY --from=go /go/bin/csc /usr/bin/csc
51- # S3 FUSE support - mountpoint-s3
52- ARG MOUNTPOINT_S3_VERSION=1.19.0
53- RUN set -eux ; \
54- ARCH="$(arch)" ; \
55- case "${ARCH}" in \
56- x86_64) arch='x86_64' ;; \
57- aarch64) arch='arm64' ;; \
58- *) echo "Unsupported architecture: ${ARCH}" ; exit 1 ;; \
59- esac; \
60- curl -L "https://s3.amazonaws.com/mountpoint-s3-release/${MOUNTPOINT_S3_VERSION}/${arch}/mount-s3-${MOUNTPOINT_S3_VERSION}-${arch}.rpm" -o mount-s3.rpm ; \
61- dnf install -y mount-s3.rpm ; \
62- rm -f mount-s3.rpm
63-
64- # Install rclone for smoketest
65- ARG RCLONE_VERSION=1.69.3
66- RUN set -eux ; \
67- ARCH="$(arch)" ; \
68- case "${ARCH}" in \
69- x86_64) arch='amd64' ;; \
70- aarch64) arch='arm64' ;; \
71- *) echo "Unsupported architecture: ${ARCH}" ; exit 1 ;; \
72- esac; \
73- curl -L -o /tmp/package.rpm "https://downloads.rclone.org/v${RCLONE_VERSION}/rclone-v${RCLONE_VERSION}-linux-${arch}.rpm" ; \
74- dnf install -y /tmp/package.rpm; \
75- rm -f /tmp/package.rpm
76-
77-
7847# For executing inline smoketest
7948RUN set -eux ; \
8049 pip3 install awscli==1.38.15 robotframework==6.1.1 boto3==1.37.15 ; \
@@ -99,31 +68,6 @@ RUN set -eux ; \
9968 chmod +x dumb-init ; \
10069 mv dumb-init /usr/local/bin/dumb-init
10170
102- # byteman test for development
103- ARG BYTEMAN_VERSION=4.0.25
104- ENV BYTEMAN_HOME=/opt/byteman
105- RUN cd /tmp && \
106- curl -L -o byteman.zip https://downloads.jboss.org/byteman/${BYTEMAN_VERSION}/byteman-download-${BYTEMAN_VERSION}-bin.zip && \
107- unzip -j -d byteman byteman.zip && \
108- mkdir -p ${BYTEMAN_HOME}/lib && \
109- mv byteman/byteman.jar byteman/byteman-submit.jar ${BYTEMAN_HOME}/lib/ && \
110- mv byteman/bmsubmit.sh /usr/local/bin/bmsubmit && \
111- chmod +x /usr/local/bin/bmsubmit && \
112- rm -rf byteman.zip byteman && \
113- chmod -R a+rX ${BYTEMAN_HOME} && \
114- ln -s ${BYTEMAN_HOME}/lib/byteman.jar /opt/byteman.jar
115-
116- # async profiler for development profiling
117- RUN set -eux ; \
118- ARCH="$(arch)" ; \
119- case "${ARCH}" in \
120- x86_64) url='https://github.com/jvm-profiling-tools/async-profiler/releases/download/v2.9/async-profiler-2.9-linux-x64.tar.gz' ;; \
121- aarch64) url='https://github.com/jvm-profiling-tools/async-profiler/releases/download/v2.9/async-profiler-2.9-linux-arm64.tar.gz' ;; \
122- *) echo "Unsupported architecture: ${ARCH}" ; exit 1 ;; \
123- esac; \
124- curl -L ${url} | tar xvz ; \
125- mv async-profiler-* /opt/profiler
126-
12771# Hadoop native libary
12872RUN set -eux ; \
12973 ARCH="$(arch)" ; \
@@ -138,29 +82,7 @@ RUN set -eux ; \
13882 chown --no-dereference root:root /usr/lib/libhadoop* && \
13983 rm -f hadoop-${hadoop_version}.tar.gz
14084
141- # OpenJDK 21
142- RUN set -eux ; \
143- ARCH="$(arch)" ; \
144- case "${ARCH}" in \
145- x86_64) \
146- url='https://download.java.net/java/GA/jdk21.0.2/f2283984656d49d69e91c558476027ac/13/GPL/openjdk-21.0.2_linux-x64_bin.tar.gz' ; \
147- sha256='a2def047a73941e01a73739f92755f86b895811afb1f91243db214cff5bdac3f' ; \
148- ;; \
149- aarch64) \
150- url='https://download.java.net/java/GA/jdk21.0.2/f2283984656d49d69e91c558476027ac/13/GPL/openjdk-21.0.2_linux-aarch64_bin.tar.gz' ; \
151- sha256='08db1392a48d4eb5ea5315cf8f18b89dbaf36cda663ba882cf03c704c9257ec2' ; \
152- ;; \
153- *) echo "Unsupported architecture: ${ARCH}" ; exit 1 ;; \
154- esac && \
155- curl -L ${url} -o openjdk.tar.gz && \
156- echo "${sha256} *openjdk.tar.gz" | sha256sum -c - && \
157- tar xzvf openjdk.tar.gz -C /usr/local && \
158- rm -f openjdk.tar.gz
159-
160- ENV JAVA_HOME=/usr/local/jdk-21.0.2
161- # compatibility with Ozone 1.4.0 and earlier compose env.
162- RUN mkdir -p /usr/lib/jvm && ln -s $JAVA_HOME /usr/lib/jvm/jre
163-
85+ ENV JAVA_HOME=/usr/lib/jvm/jre-1.8.0-openjdk
16486ENV PATH=/opt/hadoop/libexec:$PATH:$JAVA_HOME/bin:/opt/hadoop/bin
16587
16688RUN id=1000; \
0 commit comments