ci: smaller docker image
This commit is contained in:
30
Dockerfile
30
Dockerfile
@@ -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
|
WORKDIR /app
|
||||||
|
|
||||||
COPY . /app/
|
COPY pyproject.toml poetry.lock /app/
|
||||||
|
|
||||||
RUN pip install --no-cache-dir poetry==1.8.5 && \
|
RUN poetry install --only main --no-root && rm -rf $POETRY_CACHE_DIR
|
||||||
poetry install --no-interaction --no-dev
|
|
||||||
|
|
||||||
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" ]
|
||||||
|
|||||||
@@ -1,10 +0,0 @@
|
|||||||
version: "3.9"
|
|
||||||
|
|
||||||
services:
|
|
||||||
ppgee:
|
|
||||||
build:
|
|
||||||
context: .
|
|
||||||
dockerfile: Dockerfile
|
|
||||||
environment:
|
|
||||||
- USERNAME=00011122233
|
|
||||||
- PASSWORD=00011122233
|
|
||||||
Reference in New Issue
Block a user