Spaces:
Sleeping
Sleeping
File size: 1,157 Bytes
d084d50 3a15254 0ca3497 d084d50 3a15254 41b9737 3a15254 d084d50 3a15254 0ca3497 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | # --- مرحله اول: تالیف و سبکسازی کدهای فرانتاند با Node.js ---
FROM node:20-slim AS frontend-builder
WORKDIR /app
COPY package.json vite.config.ts tsconfig.json tailwind.config.js postcss.config.js index.html main.tsx App.tsx styles.css ./
RUN npm install
RUN npm run build
# --- مرحله دوم: اجرای وبسرور پایتونی Flask کنکور ---
FROM python:3.11-slim
WORKDIR /app
RUN apt-get update && apt-get install -y --no-install-recommends \
build-essential \
libpq-dev \
&& rm -rf /var/lib/apt/lists/*
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt
# کپی اسکریپتهای پایتون بکاند
COPY app.py ./
# کپی کردن پوشه کامپایل شده نهایی فرانتاند (dist) از لایه قبل به لایه جاری پایتون
COPY --from=frontend-builder /app/dist ./dist
EXPOSE 7860
# اجرای وبسرور با استفاده از Gunicorn برای اجرای استاندارد و پایدار برنامه فلاسک
CMD ["gunicorn", "--bind", "0.0.0.0:7860", "--workers", "2", "app:flask_app"] |