canina/backend/Dockerfile
2026-07-11 20:56:16 +03:30

34 lines
735 B
Docker

FROM docker.arvancloud.ir/library/node:22-alpine AS builder
RUN sed -i 's/dl-cdn.alpinelinux.org/mirror.arvancloud.ir/g' /etc/apk/repositories && \
apk add --no-cache openssl
WORKDIR /app
# Copy all files including node_modules
COPY . .
# Generate prisma client using the existing node_modules
RUN npx prisma generate
RUN npm run build
# Production image
FROM docker.arvancloud.ir/library/node:22-alpine
RUN sed -i 's/dl-cdn.alpinelinux.org/mirror.arvancloud.ir/g' /etc/apk/repositories && \
apk add --no-cache openssl
WORKDIR /app
# Copy everything needed for production
COPY package*.json ./
COPY node_modules ./node_modules
COPY dist ./dist
EXPOSE 3000
USER node
# Start the application
CMD ["node", "dist/main"]