FROM node:20-alpine AS builder WORKDIR /app # Copy package files COPY package*.json ./ RUN npm ci # Copy source files COPY . . # Set environment variables for build ENV VITE_API_URL=http://localhost/api ENV VITE_WS_URL=ws://localhost/ws ENV VITE_STREAM_PORT=8088 # Generate .svelte-kit directory RUN npx svelte-kit sync # Build the application RUN npm run build # Production stage FROM node:20-alpine WORKDIR /app # Copy built application COPY --from=builder /app/build ./build COPY --from=builder /app/package*.json ./ # Install production dependencies only RUN npm ci --omit=dev # Expose port EXPOSE 3000 # Set environment to production ENV NODE_ENV=production CMD ["node", "build"]