jeevan2717's picture
Fix: WORKERS=1 to prevent shared state across workers
3d200d6
Raw
History Blame Contribute Delete
750 Bytes
FROM python:3.11-slim
LABEL name="incident-postmortem-writer"
LABEL version="1.0.0"
WORKDIR /app
RUN apt-get update && apt-get install -y curl && rm -rf /var/lib/apt/lists/*
# Create user first
RUN useradd -m -u 1000 appuser
# Install dependencies
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt
# Copy files with correct ownership in one step
COPY --chown=appuser:appuser . .
USER appuser
EXPOSE 7860
ENV HOST=0.0.0.0
ENV PORT=7860
ENV WORKERS=1
ENV MAX_CONCURRENT_ENVS=100
ENV DIFFICULTY=easy
HEALTHCHECK --interval=30s --timeout=10s --start-period=20s --retries=3 \
CMD curl -f http://localhost:7860/health || exit 1
CMD ["sh", "-c", "uvicorn server.app:app --host $HOST --port $PORT --workers $WORKERS"]