Kord/apps/bot/Dockerfile

25 lines
534 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 --immutable
# 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 --immutable --production
COPY --from=builder /app/dist ./dist
CMD ["node", "dist/index.js"]