FROM node:18-alpine WORKDIR /app # Install build dependencies for native modules (sqlite3) RUN apk add --no-cache python3 make g++ COPY package*.json ./ RUN npm install COPY . . # Ensure data directory exists RUN mkdir -p data RUN npm run build EXPOSE 3000 HEALTHCHECK --interval=30s --timeout=3s --start-period=5s --retries=3 \ CMD wget --no-verbose --tries=1 --spider http://localhost:3000/health || exit 1 CMD ["npm", "start"]