# Step 1: Build Frontend | مرحلة بناء الواجهة FROM node:20-alpine AS frontend-builder WORKDIR /usr/src/app/frontend COPY frontend/package*.json ./ RUN npm install COPY frontend/ ./ RUN npm run build # Step 2: Build Backend | مرحلة بناء الخلفية FROM node:20-alpine AS builder WORKDIR /usr/src/app COPY package*.json ./ RUN npm install COPY . . RUN npm run build # Step 3: Production Phase | مرحلة الإنتاج FROM node:20-alpine WORKDIR /usr/src/app COPY package*.json ./ RUN npm install --only=production COPY --from=builder /usr/src/app/dist ./dist # Copy frontend build to backend public folder | نسخ واجهة المستخدم إلى الملفات العامة COPY --from=frontend-builder /usr/src/app/frontend/dist ./public # Expose port | فتح المنفذ EXPOSE 3660 # Command to run | أمر التشغيل CMD ["node", "dist/main"]