Kord/Dockerfile

26 lines
588 B
Docker

FROM node:20-alpine AS builder
WORKDIR /app
COPY package.json yarn.lock .yarnrc.yml ./
COPY .yarn ./.yarn
RUN corepack enable && yarn install
# Generate Prisma Client
COPY prisma ./prisma/
RUN yarn prisma generate
# Build TypeScript
COPY tsconfig.json ./
COPY src ./src/
RUN yarn tsc
FROM node:20-alpine AS runner
WORKDIR /app
COPY package.json yarn.lock .yarnrc.yml ./
COPY .yarn ./.yarn
RUN corepack enable && yarn install
COPY --from=builder /app/node_modules/@prisma/client ./node_modules/@prisma/client
COPY --from=builder /app/dist ./dist
CMD ["yarn", "node", "dist/index.js"]