# Generated by https://smithery.ai. See: https://smithery.ai/docs/config#dockerfile
# Use a Node.js image for building the application
FROM node:16-alpine AS builder
# Set the working directory
WORKDIR /app
# Copy the package.json and package-lock.json files
COPY package.json /app/
# Install dependencies
RUN npm install
# Copy the entire project
COPY . /app
# Build the project
RUN npm run build
# Use a lighter Node.js image for the runtime
FROM node:16-alpine AS runtime
# Set the working directory
WORKDIR /app
# Copy the build from the builder image
COPY --from=builder /app/build /app/build
# Copy package.json to the runtime image
COPY --from=builder /app/package.json /app/
# Install only production dependencies
RUN npm install --only=production
# Set environment variables (modify these with your own settings)
ENV SINGLESTORE_HOST=your-host.singlestore.com \
SINGLESTORE_PORT=3306 \
SINGLESTORE_USER=your-username \
SINGLESTORE_PASSWORD=your-password \
SINGLESTORE_DATABASE=your-database
# Command to run the server
CMD ["node", "build/index.js"]