|  |  | 
					
						
						|  | FROM python:3.11-slim | 
					
						
						|  |  | 
					
						
						|  |  | 
					
						
						|  | ENV PYTHONDONTWRITEBYTECODE=1 \ | 
					
						
						|  | PYTHONUNBUFFERED=1 \ | 
					
						
						|  | LOG_LEVEL=INFO \ | 
					
						
						|  | WORKERS=4 | 
					
						
						|  |  | 
					
						
						|  |  | 
					
						
						|  | RUN apt-get update && apt-get install -y --no-install-recommends \ | 
					
						
						|  | build-essential curl && \ | 
					
						
						|  | rm -rf /var/lib/apt/lists/* | 
					
						
						|  |  | 
					
						
						|  |  | 
					
						
						|  | WORKDIR /app | 
					
						
						|  | COPY requirements.txt . | 
					
						
						|  | RUN pip install --no-cache-dir -r requirements.txt | 
					
						
						|  |  | 
					
						
						|  |  | 
					
						
						|  | COPY . . | 
					
						
						|  |  | 
					
						
						|  |  | 
					
						
						|  | EXPOSE 8000 | 
					
						
						|  |  | 
					
						
						|  |  | 
					
						
						|  | HEALTHCHECK --interval=30s --timeout=3s --retries=3 CMD \ | 
					
						
						|  | curl -sf http://localhost:8000/health || exit 1 | 
					
						
						|  |  | 
					
						
						|  |  | 
					
						
						|  | CMD ["sh", "-c", "uvicorn main:app --host 0.0.0.0 --port 8000 --workers $WORKERS"] |