@@ -45,12 +45,12 @@ ENV JAVA_HOME=/etc/alternatives/jre
4545
4646ENV HADOOP_VERSION 3.1.1
4747
48- ENV HADOOP_CLASSPATH=/opt/hadoop-$HADOOP_VERSION/share/hadoop/tools/lib/*
48+ ENV HADOOP_HOME=/opt/hadoop
49+ ENV HADOOP_CLASSPATH=$HADOOP_HOME/share/hadoop/tools/lib/*
4950ENV HADOOP_CONF_DIR=/etc/hadoop
50- ENV HADOOP_HOME=/opt/hadoop-$HADOOP_VERSION
5151ENV PATH=$HADOOP_HOME/bin:$PATH
5252
53- COPY --from=build /build/hadoop-dist/target/hadoop-$HADOOP_VERSION /opt/hadoop-$HADOOP_VERSION
53+ COPY --from=build /build/hadoop-dist/target/hadoop-$HADOOP_VERSION $HADOOP_HOME
5454# remove unnecessary doc/src files
5555RUN rm -rf ${HADOOP_HOME}/share/doc \
5656 && for dir in common hdfs mapreduce tools yarn; do \
@@ -61,11 +61,8 @@ RUN rm -rf ${HADOOP_HOME}/share/doc \
6161 && rm -rf ${HADOOP_HOME}/share/hadoop/yarn/test \
6262 && find ${HADOOP_HOME}/share/hadoop -name *test*.jar | xargs rm -rf
6363
64- RUN ln -s /opt/hadoop-$HADOOP_VERSION/etc/hadoop /etc/hadoop
65- RUN ln -s /opt/hadoop-$HADOOP_VERSION /opt/hadoop
66- RUN mkdir -p /opt/hadoop-$HADOOP_VERSION/logs
67-
68- RUN useradd hadoop -m -u 1002 -d $HADOOP_HOME
64+ RUN ln -s $HADOOP_HOME/etc/hadoop $HADOOP_CONF_DIR
65+ RUN mkdir -p $HADOOP_LOG_DIR
6966
7067# https://docs.oracle.com/javase/7/docs/technotes/guides/net/properties.html
7168# Java caches dns results forever, don't cache dns results forever:
@@ -74,11 +71,13 @@ RUN sed -i '/networkaddress.cache.negative.ttl/d' $JAVA_HOME/lib/security/java.s
7471RUN echo 'networkaddress.cache.ttl=0' >> $JAVA_HOME/lib/security/java.security
7572RUN echo 'networkaddress.cache.negative.ttl=0' >> $JAVA_HOME/lib/security/java.security
7673
74+ RUN useradd hadoop -m -u 1002 -d $HADOOP_HOME
75+
7776# imagebuilder expects the directory to be created before VOLUME
7877RUN mkdir -p /hadoop/dfs/data /hadoop/dfs/name
7978# to allow running as non-root
80- RUN chown -R 1002:0 /opt /hadoop /hadoop /etc/hadoop && \
81- chmod -R 774 /opt /hadoop /etc/hadoop /etc/passwd
79+ RUN chown -R 1002:0 $HADOOP_HOME /hadoop $HADOOP_CONF_DIR && \
80+ chmod -R 774 $HADOOP_HOME /hadoop $HADOOP_CONF_DIR /etc/passwd
8281
8382VOLUME /hadoop/dfs/data /hadoop/dfs/name
8483
0 commit comments