FROM python:3.6-slim-stretch


ENV FLASK_APP=nopaque.py


RUN apt-get update \
 && apt-get install --no-install-recommends --yes \
      build-essential \
      libpq-dev \
      wait-for-it \
 && rm -rf /var/lib/apt/lists/*


RUN groupadd --gid 1000 --system nopaque \
 && useradd --create-home --gid nopaque --no-log-init --system --uid 1000 nopaque
USER nopaque
WORKDIR /home/nopaque


COPY ["app", "app"]
COPY ["migrations", "migrations"]
COPY ["tests", "tests"]
COPY ["config.py", "nopaque.py", "requirements.txt", "./"]
RUN python -m venv venv \
 && venv/bin/pip install --requirement requirements.txt \
 && mkdir logs


EXPOSE 5000
VOLUME ["/home/nopaque/logs", "/home/nopaque/migrations"]


COPY ["docker-entrypoint.sh", "/usr/local/bin/"]


ENTRYPOINT ["docker-entrypoint.sh"]