24 lines
661 B
Docker
24 lines
661 B
Docker
|
FROM python:3.10-alpine3.16
|
||
|
|
||
|
ENV ENV_FOR_DYNACONF=${ENV_FOR_DYNACONF} \
|
||
|
PYTHONFAULTHANDLER=1 \
|
||
|
PYTHONUNBUFFERED=1 \
|
||
|
PYTHONHASHSEED=random \
|
||
|
PIP_NO_CACHE_DIR=off \
|
||
|
PIP_DISABLE_PIP_VERSION_CHECK=on \
|
||
|
PIP_DEFAULT_TIMEOUT=100 \
|
||
|
POETRY_VERSION=1.0.0
|
||
|
|
||
|
# System deps:
|
||
|
RUN pip install "poetry==$POETRY_VERSION"
|
||
|
|
||
|
# Copy only requirements to cache them in docker layer
|
||
|
WORKDIR /app
|
||
|
COPY poetry.lock pyproject.toml /app/
|
||
|
|
||
|
# Project initialization:
|
||
|
RUN poetry config virtualenvs.create false \
|
||
|
&& poetry install $(test "$ENV_FOR_DYNACONF" == production && echo "--no-dev") --no-interaction --no-ansi
|
||
|
|
||
|
# Creating folders, and files for a project:
|
||
|
COPY . /app
|