mirror of
https://github.com/ferdzo/iotDashboard.git
synced 2026-04-05 17:16:26 +00:00
33 lines
536 B
Docker
33 lines
536 B
Docker
# Stage 1: Builder - Install dependencies with uv
|
|
FROM ghcr.io/astral-sh/uv:python3.13-alpine AS builder
|
|
|
|
WORKDIR /app
|
|
|
|
ENV UV_COMPILE_BYTECODE=1
|
|
|
|
COPY pyproject.toml uv.lock ./
|
|
|
|
RUN uv sync --frozen --no-dev --no-install-project
|
|
|
|
COPY . .
|
|
|
|
RUN uv sync --frozen --no-dev
|
|
|
|
|
|
FROM python:3.13-alpine
|
|
|
|
WORKDIR /app
|
|
|
|
COPY --from=builder /app/.venv /app/.venv
|
|
|
|
COPY --from=builder /app/*.py /app/
|
|
|
|
RUN adduser -D -u 1000 appuser && \
|
|
chown -R appuser:appuser /app
|
|
|
|
USER appuser
|
|
|
|
ENV PATH="/app/.venv/bin:$PATH"
|
|
|
|
CMD ["python", "main.py"]
|