23 lines
386 B
Docker
23 lines
386 B
Docker
FROM python:3.11-slim
|
|
|
|
WORKDIR /app
|
|
|
|
# Install uv package manager
|
|
RUN pip install uv
|
|
|
|
# Copy project configuration
|
|
COPY pyproject.toml .
|
|
# Copy uv.lock if it exists, otherwise just the pyproject (using wildcard)
|
|
COPY uv.lock* ./
|
|
|
|
# Install dependencies using uv
|
|
RUN uv sync
|
|
|
|
# Copy application code
|
|
COPY . .
|
|
|
|
EXPOSE 8000
|
|
|
|
# Run the FastAPI server
|
|
CMD ["uv", "run", "python", "main.py"]
|