Brozy123 commited on
Commit
d4157d3
·
verified ·
1 Parent(s): 9bbb1b1

Update Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +13 -12
Dockerfile CHANGED
@@ -1,33 +1,34 @@
1
- FROM node:18-bullseye
2
 
3
- # Install tools needed for stable networking
4
- USER root
5
- RUN apt-get update && apt-get install -y \
6
  ca-certificates \
7
  libfontconfig1 \
8
  libfreetype6 \
9
- libpango1.0-0 \
10
  libcairo2 \
11
- libjpeg-dev \
12
- libpng-dev \
13
- libgif-dev \
14
- librsvg2-dev \
15
  fonts-dejavu-core \
16
  && rm -rf /var/lib/apt/lists/*
17
 
18
  USER node
19
  WORKDIR /home/node/app
20
 
21
- COPY --chown=node package.json ./
22
- RUN npm install
 
23
 
 
24
  COPY --chown=node . .
25
 
26
  EXPOSE 7860
27
 
28
  ENV PORT=7860
29
  ENV NODE_ENV=production
30
- # Force IPv4 at the deepest level
31
  ENV NODE_OPTIONS="--dns-result-order=ipv4first"
32
 
33
  CMD ["node", "index.js"]
 
 
1
+ FROM node:18-bullseye-slim
2
 
3
+ # Install runtime tools for networking and graphics
4
+ RUN apt-get update && apt-get install -y --no-install-recommends \
 
5
  ca-certificates \
6
  libfontconfig1 \
7
  libfreetype6 \
 
8
  libcairo2 \
9
+ libjpeg62-turbo \
10
+ libpng16-16 \
11
+ libgif7 \
12
+ librsvg2-2 \
13
  fonts-dejavu-core \
14
  && rm -rf /var/lib/apt/lists/*
15
 
16
  USER node
17
  WORKDIR /home/node/app
18
 
19
+ # Only copy package.json first to leverage Docker cache for npm install
20
+ COPY --chown=node package.json package-lock.json* ./
21
+ RUN npm ci --omit=dev || npm install --omit=dev
22
 
23
+ # Copy the rest (respects .dockerignore)
24
  COPY --chown=node . .
25
 
26
  EXPOSE 7860
27
 
28
  ENV PORT=7860
29
  ENV NODE_ENV=production
30
+ # Force IPv4 at the deepest level for Discord connectivity on HF
31
  ENV NODE_OPTIONS="--dns-result-order=ipv4first"
32
 
33
  CMD ["node", "index.js"]
34
+