FROM debian:stretch
LABEL maintainer="Evgenii Protsenko <procenkoeg@yandex-team.ru>"

# Dependencies
RUN echo "deb http://deb.debian.org/debian stable-backports main" >> /etc/apt/sources.list
RUN apt-get -q update
RUN apt-get -qy install python-pymongo python-crypto python-setuptools \
    python-future python-bottle ca-certificates

# Py2neo
ADD https://github.com/nigelsmall/py2neo/tarball/py2neo-3.0.0 ./py2neo.tar.gz
RUN tar zxf ./py2neo.tar.gz && rm ./py2neo.tar.gz && \
    mv nigelsmall-py2neo-* py2neo && cd py2neo && \
    python setup.py build && python setup.py install && \
    cd ../ && rm -rf py2neo/


# --- IVRE: OPTION 1: WGET&PATCH --- #
RUN apt-get -y install python-pip wget
RUN wget https://github.com/cea-sec/ivre/archive/v0.9.11.tar.gz
RUN tar -xf v0.9.11.tar.gz
RUN cd ivre-0.9.11 && python setup.py build && \
    python setup.py install && pip install -r requirements-postgres.txt

# Config
ADD ivre.conf /etc/ivre.conf

# ---------------------
# --- Debby Console ---
# ---------------------
# requirements
ADD requirements.txt /usr/lib/debby_console/requirements.txt
# ADD yarequirements.txt /usr/lib/debby_console/yarequirements.txt
RUN pip install -r /usr/lib/debby_console/requirements.txt
# RUN pip install -r /usr/lib/debby_console/yarequirements.txt
# src
ADD debby_console.tar /usr/lib/debby_console
ADD manage.py /usr/lib/debby_console/manage.py
ADD ivre.conf /usr/lib/debby_console/config/host_ivre.conf

# ------------------
# --- Supervisor ---
# ------------------

RUN apt-get -y install supervisor redis-server && mkdir -p /var/log/supervisor

COPY supervisord.conf /etc/supervisor/conf.d/supervisord.conf

EXPOSE 5000

CMD ["/usr/bin/supervisord", "-c", "/etc/supervisor/conf.d/supervisord.conf"]