FROM python:3.11-slim ENV PYTHONDONTWRITEBYTECODE=1 \ PYTHONUNBUFFERED=1 \ PIP_NO_CACHE_DIR=1 \ HOME=/home/user \ CHROME_BIN=/usr/bin/chromium \ CHROMEDRIVER_PATH=/usr/bin/chromedriver \ DATA_DIR=/data RUN apt-get update && apt-get install -y --no-install-recommends \ chromium \ chromium-driver \ fonts-noto-cjk \ fonts-noto-color-emoji \ ca-certificates \ && rm -rf /var/lib/apt/lists/* WORKDIR /app COPY requirements.txt /app/requirements.txt RUN pip install --upgrade pip && pip install -r /app/requirements.txt COPY . /app RUN useradd -m -u 1000 user \ && mkdir -p /data /app/data \ && chown -R user:user /app /data USER user EXPOSE 7860 CMD ["gunicorn", "--bind", "0.0.0.0:7860", "--workers", "1", "--threads", "8", "--timeout", "180", "--log-level", "info", "--error-logfile", "-", "--capture-output", "app:app"]