wag-services-and-backend-la.../ApiServices/AuthApiService/Dockerfile

34 lines
1.1 KiB
Docker

FROM python:3.12-slim
WORKDIR /
# Install system dependencies and Poetry
RUN apt-get update && apt-get install -y --no-install-recommends gcc \
&& rm -rf /var/lib/apt/lists/* && pip install --no-cache-dir poetry
# Copy Poetry configuration
COPY ApiServices/AuthApiService/pyproject.toml ./pyproject.toml
# Configure Poetry and install dependencies with optimizations
RUN poetry config virtualenvs.create false && poetry install --no-interaction --no-ansi --no-root --only main \
&& pip cache purge && rm -rf ~/.cache/pypoetry
# Copy application code
COPY ApiServices/AuthApiService /
# Copy application code
COPY ApiLayers /ApiLayers
COPY Services /Services
# Events
COPY Events/Engine /Events/Engine
COPY Events/base_request_model.py /Events/base_request_model.py
COPY Events/AllEvents/authentication /Events/AllEvents/authentication
COPY ApiServices/AuthApiService/events_file.py /Events/AllEvents/events_file.py
# Set Python path to include app directory
ENV PYTHONPATH=/ PYTHONUNBUFFERED=1 PYTHONDONTWRITEBYTECODE=1
# Run the application using the configured uvicorn server
CMD ["poetry", "run", "python", "app.py"]