FROM node:22-bookworm-slim AS frontend-builder WORKDIR /app/frontend COPY frontend/package.json frontend/package-lock.json* ./ RUN npm ci COPY frontend ./ ARG NEXT_PUBLIC_API_URL= ARG BACKEND_INTERNAL_URL=http://127.0.0.1:8000 ENV NEXT_PUBLIC_API_URL=$NEXT_PUBLIC_API_URL ENV BACKEND_INTERNAL_URL=$BACKEND_INTERNAL_URL RUN npm run build FROM python:3.12-slim ENV PYTHONDONTWRITEBYTECODE=1 ENV PYTHONUNBUFFERED=1 ENV NODE_ENV=production ENV HOSTNAME=0.0.0.0 WORKDIR /app RUN apt-get update \ && apt-get install -y --no-install-recommends ca-certificates curl ffmpeg \ && curl -fsSL https://deb.nodesource.com/setup_22.x | bash - \ && apt-get install -y --no-install-recommends nodejs \ && rm -rf /var/lib/apt/lists/* COPY requirements.txt ./ RUN pip install --no-cache-dir -r requirements.txt COPY backend ./backend COPY scripts ./scripts COPY --from=frontend-builder /app/frontend/.next ./frontend/.next COPY --from=frontend-builder /app/frontend/package.json ./frontend/package.json COPY --from=frontend-builder /app/frontend/node_modules ./frontend/node_modules EXPOSE 3000 CMD ["bash", "scripts/start-coolify.sh"]