diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..58878ab --- /dev/null +++ b/Dockerfile @@ -0,0 +1,37 @@ +# Generated by https://smithery.ai. See: https://smithery.ai/docs/config#dockerfile +# Use an official Node.js image as the base image +FROM node:16-alpine AS builder + +# Set the working directory +WORKDIR /app + +# Copy package.json and package-lock.json files +COPY package.json package-lock.json ./ + +# Install dependencies +RUN npm install --ignore-scripts + +# Copy the rest of the application code +COPY . . + +# Build the application +RUN npm run build + +# Use a smaller image for the runtime +FROM node:16-alpine AS runner + +# Set the working directory +WORKDIR /app + +# Copy the build output and package.json +COPY --from=builder /app/build ./build +COPY --from=builder /app/package.json ./ + +# Set environment variables +ENV GITLAB_API_URL=https://gitlab.com/api/v4 + +# Define the command to run the application +ENTRYPOINT ["node", "build/index.js"] + +# This image requires the following environment variable at runtime: +# - GITLAB_PERSONAL_ACCESS_TOKEN: Your GitLab personal access token