FROM python:3.9-slim-buster as builder
ENV PYTHONUNBUFFERED 1
COPY . ./

ENV POETRY_VERSION=1.1.4

RUN pip install "poetry==$POETRY_VERSION"
RUN poetry export > requirements.txt

FROM python:3.9-slim-buster as server

WORKDIR /app
COPY . ./
COPY --from=builder requirements.txt ./

ENV PYTHONUNBUFFERED=1 \
    # prevents python creating .pyc files
    PYTHONDONTWRITEBYTECODE=1 \
    # pip
    PIP_NO_CACHE_DIR=off \
    PIP_DISABLE_PIP_VERSION_CHECK=on \
    PIP_DEFAULT_TIMEOUT=100

RUN apt-get update && apt-get install --no-install-recommends -y build-essential
RUN pip install -r requirements.txt

RUN python manage.py collectstatic --noinput
CMD ["sh", "-c", "./production_entrypoint.sh"]
