33 lines
619 B
Docker
33 lines
619 B
Docker
FROM python:3.14-slim AS builder
|
|
|
|
ENV PYTHONDONTWRITEBYTECODE=1 \
|
|
PYTHONUNBUFFERED=1 \
|
|
VIRTUAL_ENV=/opt/venv
|
|
|
|
WORKDIR /app
|
|
|
|
RUN python -m venv "$VIRTUAL_ENV"
|
|
ENV PATH="$VIRTUAL_ENV/bin:$PATH"
|
|
|
|
COPY requirements.txt .
|
|
RUN pip install --upgrade pip && pip install --no-cache-dir -r requirements.txt
|
|
|
|
|
|
FROM python:3.14-slim AS runtime
|
|
|
|
ENV PYTHONDONTWRITEBYTECODE=1 \
|
|
PYTHONUNBUFFERED=1 \
|
|
VIRTUAL_ENV=/opt/venv \
|
|
PATH="/opt/venv/bin:$PATH"
|
|
|
|
WORKDIR /app
|
|
|
|
COPY --from=builder /opt/venv /opt/venv
|
|
COPY app ./app
|
|
COPY main.py ./
|
|
COPY requirements.txt ./
|
|
|
|
RUN mkdir -p /app/data
|
|
|
|
CMD ["python", "main.py"]
|