krishbaresha commited on
Commit
bc09953
·
verified ·
1 Parent(s): 2d3cdec

Update Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +20 -3
Dockerfile CHANGED
@@ -1,22 +1,39 @@
 
1
  FROM node:20-alpine AS builder
2
  WORKDIR /app
 
 
3
  COPY package.json package-lock.json ./
 
4
  RUN npm install
 
 
5
  COPY . .
 
 
 
6
  RUN npm run build
7
 
 
8
  FROM node:20-alpine AS runner
9
  WORKDIR /app
 
 
10
  ENV NODE_ENV production
11
 
 
 
 
12
  # Hugging Face default port 7860 use karta hai
 
 
 
 
13
  COPY --from=builder /app/next.config.ts ./
14
  COPY --from=builder /app/public ./public
15
  COPY --from=builder /app/.next ./.next
16
  COPY --from=builder /app/node_modules ./node_modules
17
  COPY --from=builder /app/package.json ./package.json
18
 
19
- EXPOSE 7860
20
- ENV PORT 7860
21
-
22
  CMD ["npm", "start", "--", "-p", "7860"]
 
1
+ # Stage 1: Build Stage
2
  FROM node:20-alpine AS builder
3
  WORKDIR /app
4
+
5
+ # Step 1: Dependencies install karein
6
  COPY package.json package-lock.json ./
7
+ # Agar package-lock nahi hai toh sirf package.json copy karke 'npm install' karein
8
  RUN npm install
9
+
10
+ # Step 2: Saara code copy karein
11
  COPY . .
12
+
13
+ # Step 3: Production build banayein
14
+ # Humne next.config.ts mein errors ignore karne ka set kar diya hai
15
  RUN npm run build
16
 
17
+ # Stage 2: Runner Stage (Final Image)
18
  FROM node:20-alpine AS runner
19
  WORKDIR /app
20
+
21
+ # Production environment set karein
22
  ENV NODE_ENV production
23
 
24
+ # --- SECRETS & PORT ---
25
+ # Hugging Face secrets yahan map honge
26
+ ENV GROQ_API_KEY=$GROQ_API_KEY
27
  # Hugging Face default port 7860 use karta hai
28
+ ENV PORT 7860
29
+ EXPOSE 7860
30
+
31
+ # Step 4: Builder stage se sirf zaruri files copy karein (Optimized size)
32
  COPY --from=builder /app/next.config.ts ./
33
  COPY --from=builder /app/public ./public
34
  COPY --from=builder /app/.next ./.next
35
  COPY --from=builder /app/node_modules ./node_modules
36
  COPY --from=builder /app/package.json ./package.json
37
 
38
+ # Step 5: App start karein
 
 
39
  CMD ["npm", "start", "--", "-p", "7860"]