FROM node:20-alpine # Install docker CLI for health checks RUN apk add --no-cache docker-cli WORKDIR /app # Copy package files COPY package*.json ./ # Install dependencies RUN npm install # Copy source code COPY . . # Build TypeScript RUN npm run build # Expose port EXPOSE 3005 # Health check HEALTHCHECK --interval=30s --timeout=3s --start-period=5s --retries=3 \ CMD wget -q -O /dev/null http://127.0.0.1:3005/health || exit 1 # Start server CMD ["npm", "start"]