Fix for production
This commit is contained in:
+15
-12
@@ -1,22 +1,25 @@
|
||||
FROM node:20-alpine AS builder
|
||||
FROM docker.arvancloud.ir/node:20-alpine AS production
|
||||
|
||||
ENV PNPM_HOME="/pnpm"
|
||||
ENV PATH="$PNPM_HOME:$PATH"
|
||||
RUN corepack enable pnpm
|
||||
# تصویر نهایی: release را لوکال بسازید:
|
||||
# pnpm --filter @lucky-wheel/api build:release
|
||||
# سپس فقط کپی میشود (بدون nest build داخل ایمیج).
|
||||
|
||||
WORKDIR /app
|
||||
|
||||
COPY . .
|
||||
ENV NODE_ENV=production
|
||||
|
||||
RUN pnpm install --frozen-lockfile
|
||||
RUN pnpm --filter @lucky-wheel/api build
|
||||
RUN pnpm deploy --filter @lucky-wheel/api --prod /prod/api
|
||||
RUN apk add --no-cache openssl libc6-compat python3 make g++
|
||||
|
||||
FROM node:20-alpine AS runner
|
||||
COPY apps/api/release/package.json ./
|
||||
COPY apps/api/release/prisma ./prisma
|
||||
COPY apps/api/release/app.js ./
|
||||
|
||||
WORKDIR /app
|
||||
COPY --from=builder /prod/api .
|
||||
RUN npm install --omit=dev \
|
||||
&& npx prisma generate \
|
||||
&& apk del python3 make g++
|
||||
|
||||
RUN mkdir -p uploads
|
||||
|
||||
EXPOSE 3000
|
||||
|
||||
CMD ["node", "dist/src/main"]
|
||||
CMD ["sh", "-c", "npx prisma migrate deploy && node app.js"]
|
||||
|
||||
Reference in New Issue
Block a user