Padgenpro / Dockerfile
Ezmary's picture
Update Dockerfile
64b45f2 verified
raw
history blame contribute delete
848 Bytes
# Use an official Python runtime as a parent image
FROM python:3.9-slim
# Set the working directory in the container
WORKDIR /app
# Copy the requirements file into the container at /app
COPY requirements.txt .
# Install any needed packages specified in requirements.txt
RUN pip install --no-cache-dir -r requirements.txt
# Copy the rest of the application's code (including templates folder)
COPY . .
# Expose the port the app runs on
EXPOSE 7860
# Define environment variable
ENV PORT=7860
# --- MAJOR CHANGE: Use thread-based workers (gthread) to enable shared memory ---
# This ensures all requests can access the same 'tasks' dictionary.
# We use 1 worker process and 5 threads within that process.
CMD ["gunicorn", "--workers", "1", "--threads", "5", "--worker-class", "gthread", "--bind", "0.0.0.0:7860", "--timeout", "480", "app:app"]