mirror of
https://github.com/newnius/Dockerfiles.git
synced 2025-06-07 16:41:55 +00:00
59 lines
1.9 KiB
Docker
59 lines
1.9 KiB
Docker
FROM alpine:3.6
|
|
|
|
MAINTAINER Newnius <newnius.cn@gmail.com>
|
|
|
|
USER root
|
|
|
|
# Prerequisites
|
|
RUN apk add --no-cache openssh openssl openjdk8-jre rsync bash procps
|
|
|
|
ENV JAVA_HOME /usr/lib/jvm/java-1.8-openjdk
|
|
ENV PATH $PATH:$JAVA_HOME/bin
|
|
|
|
# Passwordless SSH
|
|
RUN ssh-keygen -q -N "" -t dsa -f /etc/ssh/ssh_host_dsa_key
|
|
RUN ssh-keygen -q -N "" -t rsa -f /etc/ssh/ssh_host_rsa_key
|
|
RUN ssh-keygen -q -N "" -t rsa -f /root/.ssh/id_rsa
|
|
RUN cp /root/.ssh/id_rsa.pub /root/.ssh/authorized_keys
|
|
|
|
ADD ssh_config /root/.ssh/config
|
|
RUN chmod 600 /root/.ssh/config
|
|
RUN chown root:root /root/.ssh/config
|
|
|
|
RUN echo "Port 2122" >> /etc/ssh/sshd_config
|
|
|
|
# Install Hadoop
|
|
RUN wget -O hadoop.tar.gz https://archive.apache.org/dist/hadoop/common/hadoop-2.8.1/hadoop-2.8.1.tar.gz && \
|
|
tar -xzf hadoop.tar.gz -C /usr/local/ && rm hadoop.tar.gz
|
|
|
|
RUN ln -s /usr/local/hadoop-2.7.4 /usr/local/hadoop
|
|
|
|
ENV HADOOP_HOME /usr/local/hadoop
|
|
ENV PATH $PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
|
|
|
|
ENV HADOOP_PREFIX $HADOOP_HOME
|
|
ENV HADOOP_COMMON_HOME $HADOOP_HOME
|
|
ENV HADOOP_HDFS_HOME $HADOOP_HOME
|
|
ENV HADOOP_MAPRED_HOME $HADOOP_HOME
|
|
ENV HADOOP_YARN_HOME $HADOOP_HOME
|
|
ENV HADOOP_CONF_DIR $HADOOP_HOME/etc/hadoop
|
|
ENV YARN_CONF_DIR $HADOOP_PREFIX/etc/hadoop
|
|
|
|
# Default Conf Files
|
|
ADD core-site.xml $HADOOP_HOME/etc/hadoop/core-site.xml
|
|
ADD hdfs-site.xml $HADOOP_HOME/etc/hadoop/hdfs-site.xml
|
|
ADD mapred-site.xml $HADOOP_HOME/etc/hadoop/mapred-site.xml
|
|
ADD yarn-site.xml $HADOOP_HOME/etc/hadoop/yarn-site.xml
|
|
ADD slaves $HADOOP_HOME/etc/hadoop/slaves
|
|
|
|
|
|
RUN sed -i "s|export JAVA_HOME=.*|export JAVA_HOME=${JAVA_HOME}\nexport HADOOP_HOME=${HADOOP_HOME}\nexport HADOOP_PREFIX=${HADOOP_PREFIX}|g" $HADOOP_PREFIX/etc/hadoop/hadoop-env.sh
|
|
|
|
RUN sed -i "s|export HADOOP_CONF_DIR=.*|export HADOOP_CONF_DIR=${HADOOP_PREFIX}/etc/hadoop/" $HADOOP_PREFIX/etc/hadoop/hadoop-env.sh
|
|
|
|
WORKDIR $HADOOP_HOME
|
|
|
|
ADD bootstrap.sh /etc/bootstrap.sh
|
|
|
|
CMD ["/etc/bootstrap.sh", "-d"]
|