21 lines
478 B
Text
21 lines
478 B
Text
|
|
FROM python:3.12-slim
|
||
|
|
|
||
|
|
WORKDIR /app
|
||
|
|
|
||
|
|
# Install uv
|
||
|
|
COPY --from=ghcr.io/astral-sh/uv:latest /uv /usr/local/bin/uv
|
||
|
|
|
||
|
|
RUN apt-get update && apt-get install -y --no-install-recommends \
|
||
|
|
libpq-dev gcc \
|
||
|
|
&& rm -rf /var/lib/apt/lists/*
|
||
|
|
|
||
|
|
# Copy dependency files and install — leverages Docker layer cache
|
||
|
|
COPY pyproject.toml uv.lock ./
|
||
|
|
RUN uv sync --no-dev --frozen
|
||
|
|
|
||
|
|
COPY . .
|
||
|
|
|
||
|
|
EXPOSE 5000
|
||
|
|
|
||
|
|
CMD ["uv", "run", "flask", "--app", "wsgi:app", "run", "--host=0.0.0.0", "--port=5000"]
|