2
2
3
3
FROM docker.io/library/centos:centos7.7.1908
4
4
5
+ # Put this above yum install until we know (for sure) which packages we want
6
+ RUN curl -s http://apache.cs.utah.edu/hadoop/common/hadoop-3.1.3/hadoop-3.1.3.tar.gz | tar -xz -C /usr/local/ && \
7
+ mv /usr/local/hadoop-3.1.3 /usr/local/hadoop
8
+
5
9
RUN rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7 && \
6
10
yum -y install \
7
11
curl \
@@ -12,52 +16,36 @@ RUN rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7 && \
12
16
openssh-clients \
13
17
rsync \
14
18
libselinux \
15
- java-1.8.0-openjdk \
16
- epel-release && \
17
- rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7 && \
18
- yum -y install supervisor
19
+ java-1.8.0-openjdk
19
20
20
21
# passwordless ssh
21
- RUN ssh-keygen -q -N "" -t dsa -f /etc/ssh/ssh_host_dsa_key
22
- RUN ssh-keygen -q -N "" -t rsa -f /etc/ssh/ssh_host_rsa_key
23
- RUN ssh-keygen -q -N "" -t rsa -f /root/.ssh/id_rsa
24
- RUN cp /root/.ssh/id_rsa.pub /root/.ssh/authorized_keys
25
-
26
- # hadoop
27
- RUN curl -s https://www.apache.org/dyn/closer.cgi/hadoop/common/hadoop-3.1.3/hadoop-3.1.3.tar.gz | tar -xz -C /usr/local/
28
- RUN cd /usr/local && ln -s ./hadoop-3.1.3 hadoop
29
-
30
- ENV HADOOP_PREFIX /usr/local/hadoop
31
- ENV HADOOP_COMMON_HOME /usr/local/hadoop
32
- ENV HADOOP_HDFS_HOME /usr/local/hadoop
33
- ENV HADOOP_MAPRED_HOME /usr/local/hadoop
34
- ENV HADOOP_YARN_HOME /usr/local/hadoop
35
- ENV HADOOP_CONF_DIR /usr/local/hadoop/etc/hadoop
36
- ENV YARN_CONF_DIR $HADOOP_PREFIX/etc/hadoop
37
- ENV HADOOP_HOME=/usr/local/hadoop
22
+ RUN ssh-keygen -q -N "" -t dsa -f /etc/ssh/ssh_host_dsa_key && \
23
+ ssh-keygen -q -N "" -t rsa -f /etc/ssh/ssh_host_rsa_key && \
24
+ ssh-keygen -q -N "" -t rsa -f /root/.ssh/id_rsa && \
25
+ cp /root/.ssh/id_rsa.pub /root/.ssh/authorized_keys
26
+
27
+ ENV HADOOP_PREFIX /usr/local/hadoop
28
+ ENV HADOOP_COMMON_HOME /usr/local/hadoop
29
+ ENV HADOOP_HDFS_HOME /usr/local/hadoop
30
+ ENV HADOOP_MAPRED_HOME /usr/local/hadoop
31
+ ENV HADOOP_YARN_HOME /usr/local/hadoop
32
+ ENV HADOOP_CONF_DIR /usr/local/hadoop/etc/hadoop
33
+ ENV YARN_CONF_DIR $HADOOP_PREFIX/etc/hadoop
34
+ ENV HADOOP_HOME=/usr/local/hadoop
38
35
ENV JAVA_HOME=/usr
39
36
40
- RUN mkdir $HADOOP_PREFIX/ input
41
- RUN cp $HADOOP_PREFIX/ etc/hadoop/*.xml $HADOOP_PREFIX /input
37
+ RUN mkdir -p /usr/local/hadoop/ input && \
38
+ cp /usr/local/hadoop/ etc/hadoop/*.xml /usr/local/hadoop /input
42
39
43
40
# pseudo distributed
44
- COPY files/usr/local/hadoop/* /usr/local/hadoop/etc/hadoop/
45
- RUN sed s/HOSTNAME/localhost/ /usr/local/hadoop/etc/hadoop/core-site.xml.template > /usr/local/hadoop/etc/hadoop/core-site.xml
41
+ COPY files/usr/local/hadoop/etc/hadoop/ * /usr/local/hadoop/etc/hadoop/
42
+ RUN sed ' s/HOSTNAME/localhost/' /usr/local/hadoop/etc/hadoop/core-site.xml.template > /usr/local/hadoop/etc/hadoop/core-site.xml
46
43
47
- RUN $HADOOP_PREFIX /bin/hdfs namenode -format
44
+ RUN /usr/local/hadoop /bin/hdfs namenode -format
48
45
49
- ADD ssh_config /root/.ssh/config
50
46
RUN chmod 600 /root/.ssh/config
51
47
RUN chown root:root /root/.ssh/config
52
48
53
- # # installing supervisord
54
- # RUN yum install -y python-setuptools
55
- # RUN easy_install pip
56
- # RUN curl https://bitbucket.org/pypa/setuptools/raw/bootstrap/ez_setup.py -o - | python
57
- # RUN pip install supervisor
58
- #
59
- # ADD supervisord.conf /etc/supervisord.conf
60
-
61
49
ADD bootstrap.sh /etc/bootstrap.sh
62
50
RUN chown root:root /etc/bootstrap.sh
63
51
RUN chmod 700 /etc/bootstrap.sh
0 commit comments