FROM node:{{NODE_VERSION}}-slim WORKDIR /app # Copy package files first for better caching COPY package.json package-lock.json* ./ # Install production dependencies only RUN npm ci --omit=dev # Copy application source COPY . . # Set environment ENV NODE_ENV=production ENV PORT={{PORT}} {{#if BUILD_COMMAND}} # Build application RUN {{BUILD_COMMAND}} {{/if}} # Expose port EXPOSE {{PORT}} # Start application CMD ["node", "{{ENTRY_POINT}}"]