FROM node:20-bookworm # Create application directory RUN mkdir -p /usr/src/app # Set environment variables ENV PORT 3000 ENV NEXT_TELEMETRY_DISABLED=1 ENV RUNTIME_ENVIRONMENT=development ENV OAUTH_CLIENT_ID=client_id ENV OAUTH_CLIENT_SECRET=client_secret WORKDIR /usr/src/app # Copy package.json and pnpm-lock.yaml COPY package.json /usr/src/app COPY pnpm-lock.yaml /usr/src/app # Install pnpm RUN corepack enable pnpm # Install dependencies RUN pnpm install # Copy the rest of the application code COPY . /usr/src/app # Initialize Database RUN pnpm run db # Build the application RUN pnpm run build EXPOSE 3000 # Start the application CMD ["pnpm", "start"]