| # استفاده از نسخه رسمی پایتون به عنوان پایه | |
| FROM python:3.9-slim | |
| # تعیین پوشه کاری | |
| WORKDIR /app | |
| # --- START: بخش اضافه شده برای نصب FFmpeg --- | |
| # آپدیت لیست پکیجها و نصب FFmpeg | |
| # apt-get -yqq به معنی نصب بدون پرسیدن سوال و با خروجی کمتر است | |
| RUN apt-get update && apt-get install -yqq ffmpeg | |
| # --- END: بخش اضافه شده --- | |
| # نصب نیازمندیهای پایتون | |
| COPY requirements.txt requirements.txt | |
| RUN pip install --no-cache-dir -r requirements.txt | |
| # کپی کردن تمام فایلهای پروژه | |
| COPY . . | |
| # پورتی که برنامه روی آن اجرا میشود | |
| EXPOSE 7860 | |
| # دستور اجرای برنامه با Gunicorn (اصلاح شده با worker-class gthread) | |
| CMD ["gunicorn", "--bind", "0.0.0.0:7860", "--worker-class", "gthread", "--timeout", "600", "--threads", "50", "app:app"] |