FROM ubuntu:16.04 # Setup apt.conf proxy settings #RUN echo 'Acquire::http::proxy "http://some.proxy:8084/";' >> /etc/apt/apt.conf # Setup Corporate proxy #ENV no_proxy "localhost,127.0.0.1,localaddress,.localdomain.com,192.168.141.0/24" #ENV https_proxy http://some.proxy:8084/ #ENV http_proxy http://fsome.proxy:8084/ #ENV HTTP_PROXY http://some.proxy:8084/ #ENV HTTPS_PROXY http://some.proxy:8084/ #ENV FTP_PROXY http://some.proxy:8084/ #ENV NO_PROXY "localhost,127.0.0.1,localaddress,.localdomain.com,192.168.141.0/24" # Additional packages RUN apt-get update -y RUN apt-get install -y git wget unzip curl dnsutils sudo RUN apt-get install -y maven unzip # Install python and pip RUN apt-get install -y python RUN wget https://bootstrap.pypa.io/get-pip.py RUN python get-pip.py RUN rm get-pip.py RUN pip install pyyaml # Install Groovy RUN mkdir -p /opt/app RUN (cd /opt/app ; curl -Lo apache-groovy-binary-2.4.6.zip https://dl.bintray.com/groovy/maven/apache-groovy-binary-2.4.6.zip ) RUN (cd /opt/app ; unzip apache-groovy-binary-2.4.6.zip ) RUN mkdir -p /opt/app/java/jdk RUN ln -s /usr /opt/app/java/jdk/jdk170 RUN mkdir -p /opt/app/groovy RUN ln -s /opt/app/groovy-2.4.6 /opt/app/groovy/246 ENV JAVA_HOME /opt/app/java/jdk/jdk170 # Create user dcae RUN if [ ! -e /home/dcae ]; then useradd -m -s /bin/bash dcae; fi # Hadoop EXPOSE 8020 8025 50070 50075 50010 50020 # Zookeeper EXPOSE 3888 2888 2181 VOLUME /opt/tools VOLUME /opt/data # Provisioning COPY 00-provisioning.sh /usr/local/bin/00-provisioning.sh RUN chmod a+x /usr/local/bin/00-provisioning.sh RUN /usr/local/bin/00-provisioning.sh # define the entrypoint COPY 01-entrypoint.sh /usr/local/bin/01-entrypoint.sh RUN chmod a+x /usr/local/bin/01-entrypoint.sh ENTRYPOINT ["/usr/local/bin/01-entrypoint.sh"]