|  | 
| 1 | 1 | # syntax=docker/dockerfile:1.10.0@sha256:865e5dd094beca432e8c0a1d5e1c465db5f998dca4e439981029b3b81fb39ed5 | 
| 2 | 2 | # check=error=true | 
| 3 | 3 | 
 | 
| 4 |  | -FROM stackable/image/java-devel AS builder | 
|  | 4 | +FROM stackable/image/java-devel AS hadoop-builder | 
| 5 | 5 | 
 | 
| 6 | 6 | ARG PRODUCT | 
| 7 | 7 | ARG ASYNC_PROFILER | 
| @@ -95,6 +95,17 @@ ARG HDFS_UTILS | 
| 95 | 95 | ARG PRODUCT | 
| 96 | 96 | ARG STACKABLE_USER_UID | 
| 97 | 97 | 
 | 
|  | 98 | +# Starting with hdfs-utils 0.4.0 we need to use Java 17 for compilation. | 
|  | 99 | +# We can not simply use java-devel with Java 17, as it is also used to compile Hadoop in this | 
|  | 100 | +# Dockerfile, which needs Java 11. So we need to also use the java-devel image in version 11 and | 
|  | 101 | +# install Java 17 ourselves. | 
|  | 102 | +# The adptiom yum repo is already added by the java-devel Dockerfile. | 
|  | 103 | +RUN microdnf update && \ | 
|  | 104 | +    microdnf install -y temurin-17-jdk && \ | 
|  | 105 | +    microdnf clean all && \ | 
|  | 106 | +    rm -rf /var/cache/yum | 
|  | 107 | +ENV JAVA_HOME="/usr/lib/jvm/temurin-17-jdk" | 
|  | 108 | + | 
| 98 | 109 | USER ${STACKABLE_USER_UID} | 
| 99 | 110 | WORKDIR /stackable | 
| 100 | 111 | 
 | 
| @@ -125,9 +136,9 @@ LABEL name="Apache Hadoop" \ | 
| 125 | 136 |       summary="The Stackable image for Apache Hadoop." \ | 
| 126 | 137 |       description="This image is deployed by the Stackable Operator for Apache Hadoop / HDFS." | 
| 127 | 138 | 
 | 
| 128 |  | -COPY --chown=${STACKABLE_USER_UID}:0 --from=builder /stackable/hadoop-${PRODUCT} /stackable/hadoop-${PRODUCT}/ | 
| 129 |  | -COPY --chown=${STACKABLE_USER_UID}:0 --from=builder /stackable/jmx /stackable/jmx/ | 
| 130 |  | -COPY --chown=${STACKABLE_USER_UID}:0 --from=builder /stackable/async-profiler /stackable/async-profiler/ | 
|  | 139 | +COPY --chown=${STACKABLE_USER_UID}:0 --from=hadoop-builder /stackable/hadoop-${PRODUCT} /stackable/hadoop-${PRODUCT}/ | 
|  | 140 | +COPY --chown=${STACKABLE_USER_UID}:0 --from=hadoop-builder /stackable/jmx /stackable/jmx/ | 
|  | 141 | +COPY --chown=${STACKABLE_USER_UID}:0 --from=hadoop-builder /stackable/async-profiler /stackable/async-profiler/ | 
| 131 | 142 | COPY --chown=${STACKABLE_USER_UID}:0 --from=hdfs-utils-builder /stackable/hadoop-${PRODUCT}/share/hadoop/common/lib/hdfs-utils-${HDFS_UTILS}.jar /stackable/hadoop-${PRODUCT}/share/hadoop/common/lib/hdfs-utils-${HDFS_UTILS}.jar | 
| 132 | 143 | COPY --chown=${STACKABLE_USER_UID}:0 hadoop/stackable/fuse_dfs_wrapper /stackable/ | 
| 133 | 144 | 
 | 
|  | 
0 commit comments