srivatsavdamaraju commited on
Commit
8c5c84c
·
verified ·
1 Parent(s): 2ea979a

Update Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +9 -38
Dockerfile CHANGED
@@ -1,49 +1,20 @@
1
- # Use official Node.js 18 slim image
2
- FROM node:18-slim
3
-
4
- # Install Chromium + all required dependencies
5
- RUN apt-get update && apt-get install -y \
6
- chromium \
7
- chromium-common \
8
- chromium-sandbox \
9
- fonts-liberation \
10
- libasound2 \
11
- libatk-bridge2.0-0 \
12
- libatk1.0-0 \
13
- libcups2 \
14
- libdbus-1-3 \
15
- libdrm2 \
16
- libgbm1 \
17
- libgtk-3-0 \
18
- libnspr4 \
19
- libnss3 \
20
- libx11-xcb1 \
21
- libxcomposite1 \
22
- libxdamage1 \
23
- libxrandr2 \
24
- libxss1 \
25
- libxtst6 \
26
- xdg-utils \
27
- --no-install-recommends \
28
- && rm -rf /var/lib/apt/lists/*
29
-
30
- # Tell Puppeteer to use system Chromium
31
- ENV PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=true
32
- ENV PUPPETEER_EXECUTABLE_PATH=/usr/bin/chromium
33
 
 
34
  WORKDIR /app
35
 
 
36
  COPY package*.json ./
 
 
37
  RUN npm install --production
38
 
 
39
  COPY . .
40
 
41
- # Create non-root user
42
- RUN groupadd -r nodeuser && useradd -r -g nodeuser nodeuser \
43
- && chown -R nodeuser:nodeuser /app
44
-
45
- USER nodeuser
46
-
47
  EXPOSE 7860
48
 
 
49
  CMD ["node", "server.js"]
 
1
+ # Best base image for Puppeteer – Chromium preinstalled, fully compatible
2
+ FROM ghcr.io/puppeteer/puppeteer:latest
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3
 
4
+ # Set working directory
5
  WORKDIR /app
6
 
7
+ # Copy package files
8
  COPY package*.json ./
9
+
10
+ # Install production dependencies
11
  RUN npm install --production
12
 
13
+ # Copy your app
14
  COPY . .
15
 
16
+ # Expose port
 
 
 
 
 
17
  EXPOSE 7860
18
 
19
+ # Start server
20
  CMD ["node", "server.js"]