FROM centos:7
RUN yum -q -y update && yum clean all && \
yum install -q -y wget openssh-server openssh-clients java-1.8.0-openjdk
WORKDIR /usr/local
COPY ./files/config ~/.ssh/config
ADD https://archive.apache.org/dist/spark/spark-2.4.4/spark-2.4.4-bin-hadoop2.7.tgz .
ENV JAVA_HOME /usr
ENV PATH $PATH:$JAVA_HOME/bin
ENV SPARK_MASTER_HOST master
ENV NOTVISIBLE "in users profile"
EXPOSE 22
RUN ssh-keygen -A && \
ssh-keygen -q -N "" -t rsa -f /root/.ssh/id_rsa && \
cp ~/.ssh/id_rsa.pub ~/.ssh/authorized_keys && \
chmod 400 ~/.ssh/authorized_keys && chmod 500 ~/.ssh && \
tar -zxf spark-2.4.4-bin-hadoop2.7.tgz && \
rm -f spark-2.4.4-bin-hadoop2.7.tgz && \
mv spark-2.4.4-bin-hadoop2.7 spark-2.4.4 && \
echo -e "slave1\nslave2" > spark-2.4.4/conf/slaves && \
cp spark-2.4.4/conf/spark-env.sh.template spark-2.4.4/conf/spark-env.sh && \
sed -i 's/PermitRootLogin prohibit-password/PermitRootLogin yes/' /etc/ssh/sshd_config && \
sed 's@session\s*required\s*pam_loginuid.so@session optional pam_loginuid.so@g' -i /etc/pam.d/sshd && \
echo "export VISIBLE=now" >> /etc/profile

CMD ["/usr/sbin/sshd", "-D"]
