FROM debian:stretch-slim

LABEL maintainer="inf_sfb1288@lists.uni-bielefeld.de"

ENV DEBIAN_FRONTEND=noninteractive
ENV LANG=C.UTF-8

RUN apt-get update && \
    apt-get install -y --no-install-recommends \
    build-essential \
    ca-certificates \
    python2.7 \
    python3.5 \
    python3-dev \
    python3-pip \
    python3-setuptools \
    wget

# Install pyFlow
ENV PYFLOW_VERSION 1.1.20
RUN wget -nv https://github.com/Illumina/pyflow/releases/download/v"$PYFLOW_VERSION"/pyflow-"$PYFLOW_VERSION".tar.gz && \
    tar -xzf pyflow-"$PYFLOW_VERSION".tar.gz && \
    cd pyflow-"$PYFLOW_VERSION" && \
    python2.7 setup.py build install && \
    cd .. && \
    rm -r pyflow-"$PYFLOW_VERSION" pyflow-"$PYFLOW_VERSION".tar.gz

# Install spaCy
RUN pip3 install wheel && pip3 install -U spacy && \
    python3 -m spacy download de && \
    python3 -m spacy download en && \
    python3 -m spacy download es && \
    python3 -m spacy download fr && \
    python3 -m spacy download it && \
    python3 -m spacy download pt

COPY nlp /usr/local/bin
COPY spacy_nlp /usr/local/bin

RUN mkdir /input /output && \
    chmod a+rw /input /output

ENTRYPOINT ["nlp"]