ci: smaller docker image

This commit is contained in:
2025-01-04 20:36:21 -03:00
parent 15212311c8
commit 35060d172f
2 changed files with 25 additions and 15 deletions

View File

@@ -1,10 +1,30 @@
FROM python:3.11-slim
FROM python:3.11.11-alpine3.20 AS builder
ARG POETRY_VERSION=1.8.5
ENV POETRY_HOME=/opt/poetry
ENV POETRY_NO_INTERACTION=1
ENV POETRY_VIRTUALENVS_IN_PROJECT=1
ENV POETRY_VIRTUALENVS_CREATE=1
ENV PYTHONDONTWRITEBYTECODE=1
ENV PYTHONUNBUFFERED=1
ENV POETRY_CACHE_DIR=/opt/.cache
RUN pip install "poetry==${POETRY_VERSION}"
WORKDIR /app
COPY . /app/
COPY pyproject.toml poetry.lock /app/
RUN pip install --no-cache-dir poetry==1.8.5 && \
poetry install --no-interaction --no-dev
RUN poetry install --only main --no-root && rm -rf $POETRY_CACHE_DIR
CMD ["sh", "-c", "poetry run ppgee $USERNAME $PASSWORD"]
COPY ppgee /app/ppgee
RUN poetry install --without dev
FROM python:3.11.11-alpine3.20 AS runtime
ENV PATH="/app/.venv/bin:$PATH"
COPY --from=builder /app /app
ENTRYPOINT [ "ppgee" ]