FROM python:3.12-slim AS base ENV PYTHONDONTWRITEBYTECODE=1 PYTHONUNBUFFERED=1 MPLBACKEND=Agg LANG=fr_CA.UTF-8 RUN apt-get update && apt-get install -y --no-install-recommends locales && \ sed -i 's/# fr_CA.UTF-8/fr_CA.UTF-8/' /etc/locale.gen && locale-gen && \ rm -rf /var/lib/apt/lists/* WORKDIR /srv COPY requirements.txt . RUN pip install --no-cache-dir -r requirements.txt COPY runner.py server.py . RUN useradd -u 10001 -m sandbox && mkdir -p /workspace && chown sandbox /workspace USER 10001 EXPOSE 8080 CMD ["uvicorn", "server:app", "--host", "0.0.0.0", "--port", "8080", "--no-access-log"]