FROM ubuntu:14.04
RUN sed -i 's/# \(.*multiverse$\)/\1/g' /etc/apt/sources.list
RUN apt-get update
RUN apt-get -y upgrade
RUN apt-key update
#not sure if build-essential is essential
RUN apt-get install -y build-essential
RUN apt-get install -y pkg-config
RUN apt-get install -y yasm
RUN apt-get install -y wget
RUN apt-get install -y libpng-dev
RUN apt-get install -y zlib1g-dev
RUN apt-get install -y freetype*
RUN apt-get install -y python-tk
RUN apt-get install -y screen
#cmap is for debugging port forwarding
RUN apt-get install -y nmap
RUN apt-get install -y checkinstall
RUN apt-get install -y cmake
RUN apt-get install -y unzip
#PYTHON NUMPY
RUN apt-get install -y python-dev
RUN apt-get install -y python-numpy
RUN apt-get autoclean
RUN rm -rf /var/lib/apt/lists/*
RUN wget https://bootstrap.pypa.io/get-pip.py
RUN python get-pip.py
RUN pip install pymongo
RUN pip install ipython
RUN pip install numpy
RUN pip install python-dateutil
RUN pip install pyparsing
RUN pip install pytz
RUN pip install matplotlib
#genderizer, bayes is for text analysis - helper func to generate training files
#at this point not necessary
#RUN pip install genderizer
#RUN pip install naiveBayesClassifier
#these scripts are to check port forwarding with a single command
RUN echo 'nmap -p 27017 localhost' > portmongo.sh
RUN chmod o+x portmongo.sh
RUN echo 'nmap -p 6379 localhost' > portredis.sh
RUN chmod o+x portredis.sh
### OPENCV 3.0 ###
MAINTAINER Jeremy Rutman <jeremy@trendiguru.com>
RUN apt-get -qq install -y build-essential
RUN apt-get -qq install -y checkinstall
RUN apt-get -qq install -y cmake
RUN apt-get -qq install -y pkg-config
RUN apt-get -qq install -y yasm
RUN apt-get -qq install -y libpng12-dev
RUN apt-get -qq install -y python-dev
RUN apt-get -qq install -y python-numpy
#QT5
#RUN apt-get install -y perl wget
#RUN apt-get install -y libGL-dev
RUN mkdir -p /opt/OpenCV
RUN cd /opt/OpenCV
RUN pwd
WORKDIR /opt/OpenCV
RUN pwd
RUN wget -O OpenCV3.0.zip https://codeload.github.com/Itseez/opencv/zip/3.0.0
RUN unzip OpenCV3.0.zip
RUN wget -O opencv_contrib.zip https://codeload.github.com/Itseez/opencv_contrib/zip/3.0.0
RUN unzip opencv_contrib.zip
ENV OPENCV_HOME /opt/OpenCV
#add the nonfree stuff here if necessary
RUN mkdir -p $OPENCV_HOME/opencv-3.0.0/build
RUN cd $OPENCV_HOME/opencv-3.0.0/build
RUN pwd
WORKDIR /opt/OpenCV/opencv-3.0.0/build
RUN pwd
#for fisherfaces: -DOPENCV_EXTRA_MODULES_PATH=<opencv_contrib>/modules <opencv_source_directory>
#apparently this actually requires dl of a further repo at https://github.com/Itseez/opencv_contrib.git
RUN cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=$(python -c "import sys; print(sys.prefix)") -D PYTHON_EXECUTABLE=$(which python) -D BUILD_EXAMPLES=OFF -D INSTALL_C_EXAMPLES=OFF -D INSTALL_PYTHON_EXAMPLES=OFF -D INSTALL_TESTS=OFF -D BUILD_opencv_java=OFF -D WITH_IPP=OFF -D OPENCV_EXTRA_MODULES_PATH=/OpenCV/opencv_contrib-3.0.0/modules -D BUILD_NEW_PYTHON_SUPPORT=ON -DWITH_QT=OFF ..
RUN make -j8
RUN make install
RUN make clean
RUN sh -c 'echo "/usr/local/lib" > /etc/ld.so.conf.d/opencv.conf'
RUN ldconfig
RUN echo "OpenCV 3.0.0 is ready to be used"
RUN export PYTHONPATH=/usr/local/lib/python2.7/site-packages:$PYTHONPATH
# get GUI connection
# Replace 1000 with your user / group id
RUN export uid=1000 gid=1000 && \
mkdir -p /home/developer && \
echo "developer:x:${uid}:${gid}:Developer,,,:/home/developer:/bin/bash" >> /etc/passwd && \
echo "developer:x:${uid}:" >> /etc/group && \
echo "developer ALL=(ALL) NOPASSWD: ALL" > /etc/sudoers.d/developer && \
chmod 0440 /etc/sudoers.d/developer && \
chown ${uid}:${gid} -R /home/developer
RUN apt-get -qq install -y libgtk2.0-dev
## TG GIT CLONE ##
RUN apt-get update
RUN apt-get install -y ca-certificates
RUN apt-get install -y --force-yes git
RUN apt-get install -y ssh
ENV HOME /home/developer
ADD ssh/ /home/developer/.ssh/
ADD ssh/ssh_config /etc/ssh/ssh_config
RUN chmod 600 /home/developer/.ssh/*
RUN chown developer:developer /home/developer/
ADD ssh/first_aws.pem /home/developer/.ssh/first_aws.pem
RUN chown developer:developer /home/developer/.ssh/*
RUN ssh-keyscan bitbucket.com > /home/developer/.ssh/known_hosts
RUN mkdir /home/developer/tg
RUN chown developer:developer /home/developer/tg
RUN mkdir /home/developer/tg/Dev
RUN chown developer:developer /home/developer/tg/Dev
WORKDIR /home/developer/tg/Dev
RUN apt-get -y --force-yes install nano
USER developer
RUN whoami
RUN git clone --verbose git@bitbucket.org:ourstuff/core.git