Files
Lucky_Wheel/apps/api/Dockerfile
T

27 lines
794 B
Docker
Raw Normal View History

2026-09-10 22:37:29 +03:30
FROM docker.arvancloud.ir/node:20-alpine AS production
2026-09-10 22:37:29 +03:30
# تصویر نهایی: release را لوکال بسازید:
# pnpm --filter @lucky-wheel/api build:release
# سپس فقط کپی می‌شود (بدون nest build داخل ایمیج).
WORKDIR /app
2026-09-10 22:37:29 +03:30
ENV NODE_ENV=production
2026-09-10 23:10:52 +03:30
# CDN رسمی Alpine روی خیلی از سرورهای ایران TLS می‌خورد → میرور آروان
RUN sed -i 's|dl-cdn.alpinelinux.org|mirror.arvancloud.ir|g' /etc/apk/repositories \
&& apk add --no-cache openssl libc6-compat
2026-09-10 22:37:29 +03:30
COPY apps/api/release/package.json ./
COPY apps/api/release/prisma ./prisma
COPY apps/api/release/app.js ./
2026-09-10 22:37:29 +03:30
RUN npm install --omit=dev \
2026-09-10 23:10:52 +03:30
&& npx prisma generate
2026-09-10 22:37:29 +03:30
RUN mkdir -p uploads
EXPOSE 3000
2026-09-10 22:37:29 +03:30
CMD ["sh", "-c", "npx prisma migrate deploy && node app.js"]