シングルステージ化

This commit is contained in:
rca 2024-06-23 17:20:18 +09:00
parent a93eb2630c
commit 1a059446cd

View File

@ -1,37 +1,25 @@
# Build FROM node:18-alpine
FROM node:18-alpine as build
# Set working directory
WORKDIR /usr/src/kidshift WORKDIR /usr/src/kidshift
# Copy package files and install dependencies
COPY package*.json ./ COPY package*.json ./
RUN npm install RUN npm install
# Copy Prisma files and generate Prisma client
COPY prisma ./prisma/ COPY prisma ./prisma/
RUN npx prisma generate RUN npx prisma generate
# Copy the rest of the application code and build the project
COPY . . COPY . .
RUN npm run build RUN npm run build
# Runtime # Set environment variables if necessary
FROM node:18-alpine as runtime ENV NODE_ENV=production
WORKDIR /usr/src/kidshift
COPY package-lock.json .
COPY package.json .
COPY --from=build /usr/src/kidshift/dist ./dist
COPY --from=build /usr/src/kidshift/node_modules ./node_modules
COPY --from=build /usr/src/kidshift/prisma ./prisma
COPY --from=build /usr/src/kidshift/src ./src
COPY --from=build /usr/src/kidshift/static ./static
# CMD ["npm", "start"]
# cat package.json to debug
# CMD ["pwd"]
CMD ["ls", "-la"]
# Expose the application port
EXPOSE 3000 EXPOSE 3000
# Command to run the application
CMD ["npm", "start"]