krishgokul92 commited on
Commit
c8838a8
·
verified ·
1 Parent(s): a29737c

Update Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +13 -4
Dockerfile CHANGED
@@ -1,18 +1,27 @@
1
- # Hugging Face Spaces (Docker) compatible
2
  FROM node:20-alpine
3
 
4
  WORKDIR /app
5
 
6
- # Install prod deps (better build cache)
7
  COPY package*.json ./
8
- RUN npm ci --omit=dev
 
 
 
 
 
 
 
9
 
10
  # App files
11
  COPY public ./public
12
  COPY server.js ./server.js
13
 
14
- # Spaces provides PORT (usually 7860)
 
15
  ENV PORT=7860
 
16
  EXPOSE 7860
17
 
18
  CMD ["node", "server.js"]
 
1
+ # Hugging Face Spaces (Docker)
2
  FROM node:20-alpine
3
 
4
  WORKDIR /app
5
 
6
+ # Copy manifests first for caching
7
  COPY package*.json ./
8
+
9
+ # If a lockfile exists, use npm ci; otherwise fall back to npm install
10
+ # npm@10 uses --omit=dev (modern replacement for --only=production)
11
+ RUN if [ -f package-lock.json ]; then \
12
+ npm ci --omit=dev ; \
13
+ else \
14
+ npm install --omit=dev ; \
15
+ fi
16
 
17
  # App files
18
  COPY public ./public
19
  COPY server.js ./server.js
20
 
21
+ # Spaces provides PORT (typically 7860)
22
+ ENV HOST=0.0.0.0
23
  ENV PORT=7860
24
+ ENV NODE_ENV=production
25
  EXPOSE 7860
26
 
27
  CMD ["node", "server.js"]