Skip to content

Commit f0bb4d7

Browse files
Merge pull request apache#7 from chancez/update_hadoop_home
Dockerfile*: Remove hadoop home symlink, just put everything into /opt/hadoop
2 parents b990620 + 8d922d2 commit f0bb4d7

File tree

2 files changed

+17
-18
lines changed

2 files changed

+17
-18
lines changed

Dockerfile

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -69,12 +69,13 @@ ENV JAVA_HOME=/etc/alternatives/jre
6969

7070
ENV HADOOP_VERSION 3.1.1
7171

72-
ENV HADOOP_CLASSPATH=/opt/hadoop-$HADOOP_VERSION/share/hadoop/tools/lib/*
72+
ENV HADOOP_HOME=/opt/hadoop
73+
ENV HADOOP_LOG_DIR=$HADOOP_HOME/logs
74+
ENV HADOOP_CLASSPATH=$HADOOP_HOME/share/hadoop/tools/lib/*
7375
ENV HADOOP_CONF_DIR=/etc/hadoop
74-
ENV HADOOP_HOME=/opt/hadoop-$HADOOP_VERSION
7576
ENV PATH=$HADOOP_HOME/bin:$PATH
7677

77-
COPY --from=build /build/hadoop-dist/target/hadoop-$HADOOP_VERSION /opt/hadoop-$HADOOP_VERSION
78+
COPY --from=build /build/hadoop-dist/target/hadoop-$HADOOP_VERSION $HADOOP_HOME
7879
# remove unnecessary doc/src files
7980
RUN rm -rf ${HADOOP_HOME}/share/doc \
8081
&& for dir in common hdfs mapreduce tools yarn; do \
@@ -85,9 +86,8 @@ RUN rm -rf ${HADOOP_HOME}/share/doc \
8586
&& rm -rf ${HADOOP_HOME}/share/hadoop/yarn/test \
8687
&& find ${HADOOP_HOME}/share/hadoop -name *test*.jar | xargs rm -rf
8788

88-
RUN ln -s /opt/hadoop-$HADOOP_VERSION/etc/hadoop /etc/hadoop
89-
RUN ln -s /opt/hadoop-$HADOOP_VERSION /opt/hadoop
90-
RUN mkdir -p /opt/hadoop-$HADOOP_VERSION/logs
89+
RUN ln -s $HADOOP_HOME/etc/hadoop $HADOOP_CONF_DIR
90+
RUN mkdir -p $HADOOP_LOG_DIR
9191

9292
# https://docs.oracle.com/javase/7/docs/technotes/guides/net/properties.html
9393
# Java caches dns results forever, don't cache dns results forever:
@@ -101,8 +101,8 @@ RUN useradd hadoop -m -u 1002 -d $HADOOP_HOME
101101
# imagebuilder expects the directory to be created before VOLUME
102102
RUN mkdir -p /hadoop/dfs/data /hadoop/dfs/name
103103
# to allow running as non-root
104-
RUN chown -R 1002:0 /opt /hadoop /hadoop /etc/hadoop && \
105-
chmod -R 774 /opt /hadoop /etc/hadoop /etc/passwd
104+
RUN chown -R 1002:0 $HADOOP_HOME /hadoop $HADOOP_CONF_DIR && \
105+
chmod -R 774 $HADOOP_HOME /hadoop $HADOOP_CONF_DIR /etc/passwd
106106

107107
VOLUME /hadoop/dfs/data /hadoop/dfs/name
108108

Dockerfile.rhel

Lines changed: 9 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -45,12 +45,12 @@ ENV JAVA_HOME=/etc/alternatives/jre
4545

4646
ENV 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/*
4950
ENV HADOOP_CONF_DIR=/etc/hadoop
50-
ENV HADOOP_HOME=/opt/hadoop-$HADOOP_VERSION
5151
ENV 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
5555
RUN 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
7471
RUN echo 'networkaddress.cache.ttl=0' >> $JAVA_HOME/lib/security/java.security
7572
RUN 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
7877
RUN 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

8382
VOLUME /hadoop/dfs/data /hadoop/dfs/name
8483

0 commit comments

Comments
 (0)