Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
82 changes: 2 additions & 80 deletions Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -14,9 +14,6 @@
# See the License for the specific language governing permissions and
# limitations under the License.

FROM golang:1.17.8-buster AS go
RUN go install github.com/rexray/gocsi/csc@latest

# Security update RHSA-2026:0067 breaks tar on arm64.
# Remove exclusion if package newer than tar-1.34-9.el9_7 is available (and works OK)
FROM rockylinux/rockylinux:9
Expand All @@ -28,6 +25,7 @@ RUN set -eux ; \
diffutils \
findutils \
fuse \
java-1.8.0-openjdk-headless \
jq \
krb5-workstation \
libxcrypt-compat \
Expand All @@ -46,35 +44,6 @@ RUN set -eux ; \
&& ln -sf /usr/bin/python3 /usr/bin/python
RUN python3 -m pip install --upgrade pip

# CSI / k8s / fuse / goofys dependency
COPY --from=go /go/bin/csc /usr/bin/csc
# S3 FUSE support - mountpoint-s3
ARG MOUNTPOINT_S3_VERSION=1.19.0
RUN set -eux ; \
ARCH="$(arch)"; \
case "${ARCH}" in \
x86_64) arch='x86_64' ;; \
aarch64) arch='arm64' ;; \
*) echo "Unsupported architecture: ${ARCH}"; exit 1 ;; \
esac; \
curl -L "https://s3.amazonaws.com/mountpoint-s3-release/${MOUNTPOINT_S3_VERSION}/${arch}/mount-s3-${MOUNTPOINT_S3_VERSION}-${arch}.rpm" -o mount-s3.rpm ; \
dnf install -y mount-s3.rpm ; \
rm -f mount-s3.rpm

# Install rclone for smoketest
ARG RCLONE_VERSION=1.69.3
RUN set -eux ; \
ARCH="$(arch)" ; \
case "${ARCH}" in \
x86_64) arch='amd64' ;; \
aarch64) arch='arm64' ;; \
*) echo "Unsupported architecture: ${ARCH}"; exit 1 ;; \
esac; \
curl -L -o /tmp/package.rpm "https://downloads.rclone.org/v${RCLONE_VERSION}/rclone-v${RCLONE_VERSION}-linux-${arch}.rpm"; \
dnf install -y /tmp/package.rpm; \
rm -f /tmp/package.rpm


#For executing inline smoketest
RUN set -eux ; \
pip3 install awscli==1.38.15 robotframework==6.1.1 boto3==1.37.15 ; \
Expand All @@ -99,31 +68,6 @@ RUN set -eux ; \
chmod +x dumb-init ; \
mv dumb-init /usr/local/bin/dumb-init

#byteman test for development
ARG BYTEMAN_VERSION=4.0.25
ENV BYTEMAN_HOME=/opt/byteman
RUN cd /tmp && \
curl -L -o byteman.zip https://downloads.jboss.org/byteman/${BYTEMAN_VERSION}/byteman-download-${BYTEMAN_VERSION}-bin.zip && \
unzip -j -d byteman byteman.zip && \
mkdir -p ${BYTEMAN_HOME}/lib && \
mv byteman/byteman.jar byteman/byteman-submit.jar ${BYTEMAN_HOME}/lib/ && \
mv byteman/bmsubmit.sh /usr/local/bin/bmsubmit && \
chmod +x /usr/local/bin/bmsubmit && \
rm -rf byteman.zip byteman && \
chmod -R a+rX ${BYTEMAN_HOME} && \
ln -s ${BYTEMAN_HOME}/lib/byteman.jar /opt/byteman.jar

#async profiler for development profiling
RUN set -eux ; \
ARCH="$(arch)" ; \
case "${ARCH}" in \
x86_64) url='https://github.com/jvm-profiling-tools/async-profiler/releases/download/v2.9/async-profiler-2.9-linux-x64.tar.gz' ;; \
aarch64) url='https://github.com/jvm-profiling-tools/async-profiler/releases/download/v2.9/async-profiler-2.9-linux-arm64.tar.gz' ;; \
*) echo "Unsupported architecture: ${ARCH}"; exit 1 ;; \
esac; \
curl -L ${url} | tar xvz ; \
mv async-profiler-* /opt/profiler

# Hadoop native libary
RUN set -eux ; \
ARCH="$(arch)" ; \
Expand All @@ -138,29 +82,7 @@ RUN set -eux ; \
chown --no-dereference root:root /usr/lib/libhadoop* && \
rm -f hadoop-${hadoop_version}.tar.gz

# OpenJDK 21
RUN set -eux ; \
ARCH="$(arch)"; \
case "${ARCH}" in \
x86_64) \
url='https://download.java.net/java/GA/jdk21.0.2/f2283984656d49d69e91c558476027ac/13/GPL/openjdk-21.0.2_linux-x64_bin.tar.gz'; \
sha256='a2def047a73941e01a73739f92755f86b895811afb1f91243db214cff5bdac3f'; \
;; \
aarch64) \
url='https://download.java.net/java/GA/jdk21.0.2/f2283984656d49d69e91c558476027ac/13/GPL/openjdk-21.0.2_linux-aarch64_bin.tar.gz'; \
sha256='08db1392a48d4eb5ea5315cf8f18b89dbaf36cda663ba882cf03c704c9257ec2'; \
;; \
*) echo "Unsupported architecture: ${ARCH}"; exit 1 ;; \
esac && \
curl -L ${url} -o openjdk.tar.gz && \
echo "${sha256} *openjdk.tar.gz" | sha256sum -c - && \
tar xzvf openjdk.tar.gz -C /usr/local && \
rm -f openjdk.tar.gz

ENV JAVA_HOME=/usr/local/jdk-21.0.2
# compatibility with Ozone 1.4.0 and earlier compose env.
RUN mkdir -p /usr/lib/jvm && ln -s $JAVA_HOME /usr/lib/jvm/jre

ENV JAVA_HOME=/usr/lib/jvm/jre-1.8.0-openjdk
ENV PATH=/opt/hadoop/libexec:$PATH:$JAVA_HOME/bin:/opt/hadoop/bin

RUN id=1000; \
Expand Down