#
# Ubuntu Dockerfile
#
# https://github.com/dockerfile/ubuntu
# 
# // first build the image based on this dockerfile. From the same dir of this file run
# docker build -t eae-ubuntu-generic .
# // now run the container based on the image eae-ubuntu-generic 
# docker run -d --name bucherer-dev -v /var/www/bucherer:/var/www -p 1027:22 -p 1028:80 eae-ubuntu-generic
#

# Pull base image.
FROM ubuntu:16.04


RUN apt-get -y update && \
    apt-get -y upgrade && \
    apt-get install -y software-properties-common && \
    apt-get install -y git && \
    apt-get install -y curl && \
    apt-get install -y vim && \
    apt-get install -y mysql-client && \
    apt-get install -y php-cli && \
    apt-get install -y awscli

RUN apt-get install -y openssh-server
RUN apt-get install -y mcrypt
RUN apt-get install -y php-curl
RUN apt-get install -y php-mcrypt
RUN apt-get install -y php-bcmath
RUN apt-get install -y php-mbstring
RUN apt-get install -y php-zip
RUN apt-get install -y php-gd
RUN apt-get install -y php-intl
RUN apt-get install -y php-xml
RUN apt-get install -y rsyslog

RUN mkdir /var/run/sshd
RUN chmod 0755 /var/run/sshd
RUN useradd --create-home --shell /bin/bash --groups sudo eae ## includes 'sudo'
RUN echo "root:l0c42016" | chpasswd
RUN echo "eae:l0c42016" | chpasswd
RUN sed -i 's/PermitRootLogin without-password/PermitRootLogin yes/' /etc/ssh/sshd_config
RUN sed -i 's/#PasswordAuthentication yes/PasswordAuthentication no/' /etc/ssh/sshd_config

# Add authorized_keys
RUN mkdir /root/.ssh
RUN mkdir /home/eae/.ssh

# SSH login fix. Otherwise user is kicked off after login
RUN sed 's@session\s*required\s*pam_loginuid.so@session optional pam_loginuid.so@g' -i /etc/pam.d/sshd

ENV NOTVISIBLE "in users profile"
RUN echo "export VISIBLE=now" >> /etc/profile

RUN curl –sS https://getcomposer.org/installer | php
RUN mv composer.phar /usr/local/bin/composer

RUN mkdir /var/log/loca && \
chown -R eae:eae /var/log/loca

RUN cd ~
RUN curl -sL https://deb.nodesource.com/setup_6.x -o nodesource_setup.sh
RUN bash nodesource_setup.sh
RUN apt-get install nodejs -y

RUN npm install gulp -g

RUN echo "" >> /home/eae/.bashrc && \
echo 'export PATH="$PATH:/home/eae/.composer/vendor/bin"' >> /home/eae/.bashrc


#ENV PATH /home/eae/.composer/vendor/bin:$PATH

USER eae
RUN composer global require laravel/envoy

USER root

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

