FROM node:18-alpine AS builder RUN apk add --no-cache python3 py3-pip make g++ WORKDIR /app COPY package*.json ./ RUN npm install RUN python3 -m venv /opt/venv && \ . /opt/venv/bin/activate && \ pip3 install --no-cache-dir autogen python-dotenv openai COPY . . RUN npm run build RUN ls -la .next/standalone FROM node:18-alpine AS runner WORKDIR /app # Install Python and set up venv RUN apk add --no-cache python3 py3-pip make g++ && \ python3 -m venv /opt/venv && \ . /opt/venv/bin/activate && \ pip3 install --no-cache-dir autogen python-dotenv openai # Copy all Next.js build output COPY --from=builder /app/.next/standalone ./ COPY --from=builder /app/.next/static ./.next/static COPY --from=builder /app/public ./public COPY --from=builder /app/app/api ./app/api COPY --from=builder /opt/venv /opt/venv RUN mkdir -p /app/temp && chmod 777 /app/temp USER node ENV NODE_ENV=production ENV NEXT_TELEMETRY_DISABLED=1 ENV PORT=3000 ENV PATH="/opt/venv/bin:/usr/local/bin:${PATH}" ENV VIRTUAL_ENV=/opt/venv EXPOSE 3000 CMD ["node", "server.js"]